日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

白话Elasticsearch37-深入聚合数据分析之案例实战Date Histogram Aggregation:统计每月电视销量

發(fā)布時間:2025/3/21 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 白话Elasticsearch37-深入聚合数据分析之案例实战Date Histogram Aggregation:统计每月电视销量 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 概述
  • 官方說明
  • 實例: 統(tǒng)計每月電視銷量,沒有銷量的月份也要統(tǒng)計


概述

繼續(xù)跟中華石杉老師學習ES,第37篇

課程地址: https://www.roncoo.com/view/55


官方說明

Date Histogram Aggregation: 戳這里

在 白話Elasticsearch36-深入聚合數(shù)據(jù)分析之案例實戰(zhàn)Histogram Aggregation按區(qū)間統(tǒng)計中 我們使用histogram來劃分bucket,分組操作,即按照某個值指定的interval,劃分一個一個的bucket 。

這里我們倆看下date histogram,即按照我們指定的某個date類型的日期field,以及日期interval,按照一定的日期間隔,去劃分bucket

舉個例子:

date interval = 1m,1個月

2017-01-01~2017-01-31,就是一個bucket
2017-02-01~2017-02-28,就是一個bucket


然后會去掃描每個數(shù)據(jù)的date field,判斷date落在哪個bucket中,就將其放入那個bucket

2017-01-05,就將其放入2017-01-01~2017-01-31,就是一個bucket


  • min_doc_count:設(shè)置為0 ,就是即使某個日期interval,2017-01-01~2017-01-31中,一條數(shù)據(jù)都沒有,那么這個區(qū)間也是要返回的,不然默認是會過濾掉這個區(qū)間的 。 如果不希望展示沒有銷量的月份,min_doc_count:設(shè)置為1即可,即至少要有1條數(shù)據(jù)。

  • extended_bounds,min,max:劃分bucket的時候,會限定在這個起始日期,和截止日期內(nèi)


實例: 統(tǒng)計每月電視銷量,沒有銷量的月份也要統(tǒng)計

原始數(shù)據(jù):

DSL:

GET /tvs/sales/_search {"size" : 0,"aggs": {"sales": {"date_histogram": {"field": "sold_date","interval": "month", "format": "yyyy-MM-dd","min_doc_count" : 0, "extended_bounds" : { "min" : "2016-01-01","max" : "2017-12-31"}}}} }

返回:

{"took": 2,"timed_out": false,"_shards": {"total": 5,"successful": 5,"skipped": 0,"failed": 0},"hits": {"total": 8,"max_score": 0,"hits": []},"aggregations": {"sales": {"buckets": [{"key_as_string": "2016-01-01","key": 1451606400000,"doc_count": 0},{"key_as_string": "2016-02-01","key": 1454284800000,"doc_count": 0},{"key_as_string": "2016-03-01","key": 1456790400000,"doc_count": 0},{"key_as_string": "2016-04-01","key": 1459468800000,"doc_count": 0},{"key_as_string": "2016-05-01","key": 1462060800000,"doc_count": 1},{"key_as_string": "2016-06-01","key": 1464739200000,"doc_count": 0},{"key_as_string": "2016-07-01","key": 1467331200000,"doc_count": 1},{"key_as_string": "2016-08-01","key": 1470009600000,"doc_count": 1},{"key_as_string": "2016-09-01","key": 1472688000000,"doc_count": 0},{"key_as_string": "2016-10-01","key": 1475280000000,"doc_count": 1},{"key_as_string": "2016-11-01","key": 1477958400000,"doc_count": 2},{"key_as_string": "2016-12-01","key": 1480550400000,"doc_count": 0},{"key_as_string": "2017-01-01","key": 1483228800000,"doc_count": 1},{"key_as_string": "2017-02-01","key": 1485907200000,"doc_count": 1},{"key_as_string": "2017-03-01","key": 1488326400000,"doc_count": 0},{"key_as_string": "2017-04-01","key": 1491004800000,"doc_count": 0},{"key_as_string": "2017-05-01","key": 1493596800000,"doc_count": 0},{"key_as_string": "2017-06-01","key": 1496275200000,"doc_count": 0},{"key_as_string": "2017-07-01","key": 1498867200000,"doc_count": 0},{"key_as_string": "2017-08-01","key": 1501545600000,"doc_count": 0},{"key_as_string": "2017-09-01","key": 1504224000000,"doc_count": 0},{"key_as_string": "2017-10-01","key": 1506816000000,"doc_count": 0},{"key_as_string": "2017-11-01","key": 1509494400000,"doc_count": 0},{"key_as_string": "2017-12-01","key": 1512086400000,"doc_count": 0}]}} }

"min_doc_count" : 1 的情況

總結(jié)

以上是生活随笔為你收集整理的白话Elasticsearch37-深入聚合数据分析之案例实战Date Histogram Aggregation:统计每月电视销量的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。