Я пытаюсь разработать запрос агрегации ElasticSearch, который выполняет группирование результатов на основе свойства вложенного объекта.
product :
{
productName : String,
manufacturerInfo : {
manufacturerName : String
}
}
Соответствующие сопоставления настроены для индекса.
Запрос, который мне нужен, должен выглядеть следующим образом:
{
"size" : 0,
"aggs" : {
"manufacturers" : {
"terms" : {
"field" : "manufacturerInfo.manufacturerName.keyword"
}
},
"aggs" : {
"productNames" : {
"terms" : {
"field" : "productName.keyword"
}
}
}
}
}
Запрос должен быть сгруппирован по имени вложенного свойства, но по свойствам bin из корневого объекта, и это, похоже, вызывает некоторые проблемы в ElasticSearch.
Когда предпринята попытка прекатенировать следующее:
"aggs" : {
"root" : {
"nested" : {
"path" : "manufacturerInfo"
}
},
...
}
не представляется, что этот контекст позволяет объединять элементы на основе корня объекта продукта.
Что такоеправильный синтаксис для создания binN productNames, соответствующего factoryNames, указанному во вложенных объектах ManufacturerInfo?