0
我在elasticsearch中执行查询。我需要针对索引中表示的每个月的属性“end_date_ut”(类型为Date,格式为dateOptionalTime)的点击次数。为此,我使用了date_histogram聚合。如何在date_histogram集合上放大小
我只是查询波纹管:
GET inc/_search
{
"size": 0,
"aggs": {
"appli": {
"date_histogram": {
"field": "end_date_ut",
"interval": "month"
}
}
}
}
这里是结果的一部分:
"hits": {
"total": 517478,
"max_score": 0,
"hits": []
},
"aggregations": {
"appli": {
"buckets": [
{
"key_as_string": "2009-08-01T00:00:00.000Z",
"key": 1249084800000,
"doc_count": 0
},
{
"key_as_string": "2009-09-01T00:00:00.000Z",
"key": 1251763200000,
"doc_count": 1
},
{
"key_as_string": "2009-10-01T00:00:00.000Z",
"key": 1254355200000,
"doc_count": 2362
},
{
"key_as_string": "2009-11-01T00:00:00.000Z",
"key": 1257033600000,
"doc_count": 5336
},
{
"key_as_string": "2009-12-01T00:00:00.000Z",
"key": 1259625600000,
"doc_count": 7536
},
{
"key_as_string": "2010-01-01T00:00:00.000Z",
"key": 1262304000000,
"doc_count": 8864
}
的问题是,我有太多的桶(结果)。当我使用“术语聚合”时,我没有任何问题,因为我可以设置大小,但是使用“date_histogram聚合”,我无法找到限制查询结果的方法。
您需要添加一个范围查询以限制运行'date_aggregation'的时间间隔。 – Val
这是一个很好的解决方案,但我不想限制时间间隔。有没有另一种方法只获得20个第一个结果? –
您可以使用'min_doc_count'来仅包含具有数据的存储区,即具有0个文档的存储区不会返回响应。 – Val