sub query example elastic agregaciones aggs aggregations agg elasticsearch pagination elasticsearch-plugin

query - ¿Cómo controlar los resultados de la agregación elasticsearch con From/Size?



sub aggregation elasticsearch (1)

He intentado agregar paginación en la agregación del término elasticsearch. En la consulta podemos agregar la paginación como,

{ "from": 0, // to add the start to control the pagination "size": 10, "query": { } }

esto es bastante claro, pero cuando quiero agregar paginación a la agregación, leo mucho al respecto, pero no encuentro nada, mi código se ve así,

{ "from": 0, "size": 0, "aggs": { "group_by_name": { "terms": { "field": "name", "size": 20 }, "aggs": { "top_tag_hits": { "top_hits": { "size": 1 } } } } } }

¿Hay alguna forma de crear paginación con una función o alguna otra sugerencia?


Parece que probablemente quieras particiones. De los documentos:

A veces, hay demasiados términos únicos para procesar en un único par de solicitud / respuesta, por lo que puede ser útil dividir el análisis en múltiples solicitudes. Esto se puede lograr agrupando los valores del campo en varias particiones en tiempo de consulta y procesando solo una partición en cada solicitud.

Básicamente se agrega "include": { "partition": n, "num_partitions": x }, donde n es la página x es el número de páginas.

Lamentablemente, esta característica se agregó hace poco. Si las etiquetas se pueden creer en el Issue de GitHub que generó esta característica, necesitarás tener al menos Elasticsearch 5.2 o superior.