弹性搜索日期直方图:计算直方图'字段'从开始和结束日期?

时间:2015-11-12 23:36:25

标签: date elasticsearch histogram

我想描绘在特定日子,上周每天都在进行的汽车旅行次数。我知道旅行的开始时间和结束时间 - 旅行可以持续不到一天,或超过一天。最终,我将允许用户设置间隔大小(即从每天,每两天)和日期范围(即从上周到最后两周)。

看起来日期直方图agreggation可能会有所帮助,但除了间隔大小之外,它似乎还需要一个日期字段来集中到桶中。在我的情况下,由于我只有开始和结束时间,我需要一些方法让直方图agreggator根据开始和结束时间计算给定的行程是否适合给定的间隔桶。

最好的方法是什么?

1 个答案:

答案 0 :(得分:0)

使用此模式

{
  "size": "0",
  "aggs": {
    "articles_over_time": {
      "date_histogram": {
        "field": "MyDateField",
        "interval": "1d"
      }
    }
  },
  "query": {
    "filtered": {
        "query": {
            "match_all": {}
        },
        "filter": {
            "range": {
                "MyDateField" : {
                        "gte" : "2015-11-01T00:00:00.00",
                        "lte" : "2015-12-01T00:00:00.00"
                    }
                }
            }
        }
    }
}

这将与11月份的日期桶进行汇总。如果你想要2天的桶只是改变" 1d"到" 2d"