Elasticsearch Alternate of Join запрос - PullRequest
0 голосов
/ 08 января 2019

Так как мы не можем делать объединения в Elastic search ... каков будет альтернативный способ иметь концепцию объединения в Elasticsearch. Примером будет решетка. Например, если в пользовательской таблице есть user_role с идентификатором, а пользовательские данные сохраняются в таблице user_role для этого идентификатора, то как я могу сделать Alternate (Join) в ES.

Спасибо.

1 Ответ

0 голосов
/ 08 января 2019

Есть несколько способов преодолеть это. Или:

  1. используйте Отношения между родителями и детьми Для сопоставления документов

  2. использовать Вложенные документы . На самом деле это похоже на выравнивание / нормализацию данных, так что каждый документ содержит данные user_role.

  3. Более сложно: вы можете переместить меньший набор данных (например, роли пользователей) в оперативную память в поисковой службе / приложении, а затем обогатить и отфильтровать ответы, поступающие от эластичного поиска, с ролями пользователей в памяти во время сканирования ответов. Это может работать, только если один из объединенных наборов данных достаточно мал, чтобы находиться в памяти.

...