Python - Elasticsearch ES 查历史数据平均值
Max.Bai
2020-08
需求:
查询最近12 小时的数据按照每10分钟分组统计数量
同时查询过去7天的同时段的数据平均值,同时段的70%值(从高到低排序,70%位置的数量)
比如 最近12小时中12:00-12:10 这个时段 ,过去7天的同时段,7天平均值是多少,过去7天同时段数量排序大到小,70%线数量是多少
查询代码:
end_time = int(time.time()) # 时间范围结束
new_data_start_time = end_time - SECONEDS_OF_12HOURS # 最近12小时
hitory_data_start_time = end_time - SECONEDS_OF_DAY * 7 # 最近7天 时间范围开始
# 统计周期10分钟
interval = "60s"
ma7_interval = 60
query = {
"query": {
"bool": {
"must": [
# {
# "term": {"platform": 1}, # 过滤条件
# },
{"range": {"create_time": {"gte": hitory_data_start_time, "lt": end_time}}}, #时间范围过滤
]
}
},
"size": 0,
"aggs": {
"new_data": { # 最近 12小时统计 按10分钟统计,每10分钟统计数据
"filter": {"range": {"create_time": {"from": new_data_start_time, "to": end_time}}},
"aggs": {
"by_duration": {
"date_histogram": {
# "script": "Date d1 = new Date(doc['activationTime'].value); Date d2 = new Date(doc['deact

本文介绍如何用Python通过Elasticsearch查询最近12小时按10分钟间隔统计的数据,并获取过去7天同一时间段的平均值及70%分位数。详细讲述了查询需求和代码实现。
最低0.47元/天 解锁文章
3079

被折叠的 条评论
为什么被折叠?



