直方图聚合或其他什么?

时间:2017-01-23 12:21:17

标签: elasticsearch elasticsearch-aggregation

当我需要与aggregation相同的功能时,我应该使用哪个Histogram,但是只指定桶数,而不是指定间隔?

类似的东西:给我aggs代价,然后把它分成5个桶......

我不想制作min + max aggregation,然后在发送查询之前计算5个间隔,因为这意味着服务器上有1个额外查询...首先要求min + max,然后发送实际查询

STANDARD HISTOGRAM AGGS QUERY:

"aggs":{
    "prices":{
        "histogram": {
            "field": "variants.priceVat.d1",
            "interval": 500
        }
    }
}

标准结果(最小10,最大850 = 2个桶,因为间隔为500):

"prices": {
    "doc_count": 67,
    "prices": {
        "buckets": [
            {
                "key": 10,
                "doc_count": 56
            },
            {
                "key": 500,
                "doc_count": 13
            }

        ]
    }
}

我想要什么(五个自动范围最小值的桶:10个,最大值:850 = 1个桶间隔为168个):

"prices": {
    "doc_count": 67,
    "prices":{
        "buckets": [
            {
                "key": 10,
                "doc_count": 42
            },
            {
                "key": 178,
                "doc_count": 10
            },
            {
                "key": 346,
                "doc_count": 4
            },
            {
                "key": 514,
                "doc_count": 7
            },
            {
                "key": 682,
                "doc_count": 2
            }

        ]
    }
}

0 个答案:

没有答案