<object id="xwuag"></object>
      1. <tbody id="xwuag"><pre id="xwuag"><video id="xwuag"></video></pre></tbody>
        <progress id="xwuag"></progress>

        <nav id="xwuag"><big id="xwuag"><rt id="xwuag"></rt></big></nav>
        <em id="xwuag"></em>

        <nav id="xwuag"></nav><rp id="xwuag"></rp>
        <li id="xwuag"></li>
      2. <rp id="xwuag"></rp>
        <s id="xwuag"></s><th id="xwuag"><pre id="xwuag"><video id="xwuag"></video></pre></th>
      3. <nav id="xwuag"><center id="xwuag"></center></nav>
          <dd id="xwuag"><big id="xwuag"></big></dd>

          按时间统计编辑

          如果搜索是在 Elasticsearch 中使用频率最高的,那么构建按时间统计的 date_histogram 紧随其后。 为什么你会想用 date_histogram 呢?

          假设你的数据带时间戳。 无论是什么数据(Apache 事件日志、股票买卖交易时间、棒球运动时间)只要带有时间戳都可以进行 date_histogram 分析。当你的数据有时间戳,你总是想在 时间 维度上构建指标分析:

          • 今年每月销售多少台汽车?
          • 这只股票最近 12 小时的价格是多少?
          • 我们网站上周每小时的平均响应延迟时间是多少?

          虽然通常的 histogram 都是条形图,但 date_histogram 倾向于转换成线状图以展示时间序列。 许多公司用 Elasticsearch _仅仅_ 只是为了分析时间序列数据。 date_histogram 分析是它们最基本的需要。

          date_histogram 通常的 histogram 类似。 但不是在代表数值范围的数值字段上构建 buckets,而是在时间范围上构建 buckets。 因此每一个 bucket 都被定义成一个特定的日期大小 (比如, 1个月2.5 天 )。

          我们的第一个例子将构建一个简单的折线图来回答如下问题: 每月销售多少台汽车?

          GET /cars/transactions/_search
          {
             "size" : 0,
             "aggs": {
                "sales": {
                   "date_histogram": {
                      "field": "sold",
                      "interval": "month", 
                      "format": "yyyy-MM-dd" 
                   }
                }
             }
          }

          时间间隔要求是日历术语 (如每个 bucket 1 个月)。

          我们提供日期格式以便 buckets 的键值便于阅读。

          我们的查询只有一个聚合,每月构建一个 bucket。这样我们可以得到每个月销售的汽车数量。 另外还提供了一个额外的 format 参数以便 buckets 有 "好看的" 键值。 然而在内部,日期仍然是被简单表示成数值。这可能会使得 UI 设计者抱怨,因此可以提供常用的日期格式进行格式化以更方便阅读。

          结果既符合预期又有一点出人意料(看看你是否能找到意外之处):

          {
             ...
             "aggregations": {
                "sales": {
                   "buckets": [
                      {
                         "key_as_string": "2014-01-01",
                         "key": 1388534400000,
                         "doc_count": 1
                      },
                      {
                         "key_as_string": "2014-02-01",
                         "key": 1391212800000,
                         "doc_count": 1
                      },
                      {
                         "key_as_string": "2014-05-01",
                         "key": 1398902400000,
                         "doc_count": 1
                      },
                      {
                         "key_as_string": "2014-07-01",
                         "key": 1404172800000,
                         "doc_count": 1
                      },
                      {
                         "key_as_string": "2014-08-01",
                         "key": 1406851200000,
                         "doc_count": 1
                      },
                      {
                         "key_as_string": "2014-10-01",
                         "key": 1412121600000,
                         "doc_count": 1
                      },
                      {
                         "key_as_string": "2014-11-01",
                         "key": 1414800000000,
                         "doc_count": 2
                      }
                   ]
          ...
          }

          聚合结果已经完全展示了。正如你所见,我们有代表月份的 buckets,每个月的文档数目,以及美化后的 key_as_string

          備份地址:http://www.lvesu.com/blog/es/_looking_at_time.html

          国产成人午夜福利r在线观看_欧美性受xxxx孕妇_白丝娇喘过膝袜爽短裙调教_jizz jizz xxxx