Agregación en los mejores resultados de N
Problema:
Si busco "iphone" obtengo 400 resultados de productos y la agregación de categorías de productos que tengo devuelve las 3 categorías principales en el conjunto de resultados.
Esas categorías incluirían teléfonos inteligentes, fundas de teléfonos y accesorios para teléfonos móviles.
Si busco "iphone 6" obtengo 1400 resultados debido a que el "6" adicional devuelve coincidencias con más productos. La agregación de categorías de productos ahora devuelve las 3 categorías principales para todos esos resultados.
Las 3 principales categorías de productos ahora serán desde cables hasta monitores de computadora.
Lo que debo hacer es obtener las 3 categorías principales para obtener los 100 mejores resultados.
Lo que he intentado:
He intentado usar eltop_hits
agregación dentro de la categoría superior agregación pero eso solo devuelve los productos principales en cada categoría.
Algo como esto:
{
"aggs": {
"product_categories": {
"terms": {
"field": "product_category",
"size": 10,
}
}
"aggs": {
"top-categories": {
"top_hits": {
"size" : 3
}
}
}
}
}
También he intentado crear untop_hits
agregación con una subagregación dentro para obtener las principales categorías, pero eso tampoco funciona.
{
"aggs": {
"top-categories": {
"top_hits": {
"size" : 100
}
"aggs": {
"product_categories": {
"terms": {
"field": "product_category",
"size": 3,
}
}
}
}
}
}
¿Hay alguien que me puede ayudar con este problema?