Elasticsearch: извлечение несмежных документов из отсортированного запроса - PullRequest
0 голосов
/ 05 мая 2019

База данных эластичного поиска содержит около 20 тыс. Документов и используется в среде nodejs.

Я должен применить сортировку к базе данных и получить только определенные (не смежные) документы. Например, мне нужен индекс документа с номером 2000 5000 и 8000 отсортированного результата.

Одна вещь, которую я попробовал, - это извлечь все документы и получить нужный документ по индексу массива в javascript

    result.hits.hits[2000]._source.something
    result.hits.hits[5000]._source.something
    result.hits.hits[8000]._source.something

Другое решение, о котором я могу подумать, - это создание 3 отдельных Querys. и ограничьте их FROM X и SIZE 1

Я не очень доволен обоими. Первый подход принесет огромные накладные расходы документов а второе, похоже, зависит от кэша сервера и будет нуждаться в новом запросе для каждого нужного мне результата.

Каков наилучший способ сделать это? Есть ли какой-то другой вариант, который я не видел?

...