Реверсивный (?) поиск данных в Elasticsearch

Цена договорная
15 октября 2021, 22:51 • 2 отклика • 39 просмотров
Нужен человек с глубоким пониманием эластика.

Есть несколько индексов.
Данные в индексах могут пересекаться по одному или нескольким полям.

Например, есть 3 документа:
id1 / Василий / vasya@... / нулл
id2 / Уткин / vasya@... / +7...123
id3 / нулл / aysay@... / +7...123

Запрос:
"Василий"

Ответ (должен включать все три записи):
[id1,id2,id3], [Василий, Уткин], [vasya@..., aysay@...], +7...123

Т.е. нужно получить максимум связанных данных максимально эффективным способом, при этом не зацепить лишние данные.

Работу вижу так:
Сначала голосом обсудим вашу идею для такого поиска, а потом реализация. В идеале на ноде.
Сейчас сделан поиск query match в цикле. Работает довольно медленно. Есть полная уверенность, что может и должно работать гораздо быстрее.

Повторюсь: нужен человек с глубоким пониманием эластика.

PS Посредники, пожалуйста, не пишите.