У меня есть 2 сущности, хранящиеся в отдельных индексах:
City
имеет отображение 2 полей: name:keyword
и url:text
.
Product
имеет 2 сопоставления полей: name:keyword
и city:text
Я бы хотел запросить все Product
s по URL City
.
Пример:
Given: Search all shirts by url "http://shirts-shop.com/frankfurt"
Then (step 1): Search all cities where url is "http://shirts-shop.com/frankfurt" — it will return "Frankfurt" city
Then (step 2): Search all shirts by city "Frankfurt"
В базах данных SQL довольно просто написать: нам просто нужно использовать запрос join. Как написать такой запрос в ElasticSearch 6.5 ?
WARN : объекты находятся в отдельных индексах, потому что, как сказано в документации, ElasticSearch, начиная с версии 6 , рекомендует использовать 1 индекс для сопоставления .