У меня есть поисковый пользовательский индекс Elasticsearch, документы которого возвращаются с выделенной подсветкой с помощью быстрой векторной подсветки Elasticsearch.
Документы в индексе имеют права доступа пользователя, поэтому, когда пользователь вводит поисковый запрос «Джон Доу», например, может быть возвращено более 10 000 совпадений, содержащих совпадения с «Джон Доу», но списокХиты должны быть отфильтрованы до 100 лучших документов, к которым пользователю разрешен доступ.Итак, в итоге пользователю показывается только 100 просмотров.
Проблема в том, что быстрое векторное выделение выполняется для всех возвращенных 10000 обращений, поэтому Elasticsearch выполняет дорогостоящее выделение для 9900 обращений, которые в конечном итоге отбрасываются.
Скорость поиска резко возрастает, если мыудалите выделение целиком, но нам нужно выделить это небольшое подмножество хитов.Есть ли способ выполнить выделение после того, как запрос был выполнен и хиты были возвращены?