www what tutorial started shard org introduccion getting elastic elasticsearch aggregation

what - Orden de agregación Elasticsearch por puntaje máximo de aciertos



what is elasticsearch (1)

Quiero pedir cubos por doc.score de top_hit. Mi implementación actual está abajo.

group_by_iid: { terms: { field: ''iid'', order: { max_score: ''desc'' }, size: 0 }, aggs: { max_score: { max: { script: ''doc.score'' } }, top_hit: { top_hits: { sort: [{ source_priority: { order: ''desc'' } }], size: 1 } } } }

Esto es incorrecto porque los depósitos se ordenan por su puntuación más alta, no su puntaje del documento fuente_prioritario superior. ¿Hay alguna manera de resolver este problema?


Tuve el mismo problema, y ​​la forma en que lo resolví fue introducir una subagregación en la puntuación de los documentos. Luego en mi agregado externo, ordené por nombre de la agregación max_score.

GET /my-index/my-type/_search { "query": { "bool" : { "should" : [ { "match" : { "searchTerm" : { "query" : "style", "type" : "boolean" } } }, { "flt_field" : { "searchTerm" : { "like_text" : "style" } } } ] } }, "aggs": { "group_by_target_url": { "terms": { "field": "targetUrl", "order": { "max_score": "desc" } }, "aggs": { "max_score": { "max": { "script": "doc.score" } } } } } }

Seguí las instrucciones en este enlace:

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-aggregations-bucket-terms-aggregation.html