白话Elasticsearch48-深入聚合数据分析之 Percentiles Aggregation-percentiles百分比算法以及网站访问时延统计及Percentiles优化
文章目录
- 概述
- 官方说明
- 示例
- Percentiles优化 compression
概述
继续跟中华石杉老师学习ES,第48篇
课程地址: https://www.roncoo.com/view/55
官方说明
Percentiles Aggregation: 戳这里
示例
需求: 网站访问时延统计
为了演示该功能,我们先建个索引,模拟一批数据
#新建索引
PUT /website
{"mappings": {"logs": {"properties": {"latency": {"type": "long"},"province": {"type": "keyword"},"timestamp": {"type": "date"}}}}
}
#模拟数据
POST /website/logs/_bulk
{ "index": {}}
{ "latency" : 105, "province" : "江苏", "timestamp" : "2018-10-28" }
{ "index": {}}
{ "latency" : 83, "province" : "江苏", "timestamp" : "2018-10-29" }
{ "index": {}}
{ "latency" : 92, "province" : "江苏", "timestamp" : "2018-10-29" }
{ "index": {}}
{ "latency" : 112, "province" : "江苏", "timestamp" : "2018-10-28" }
{ "index": {}}
{ "latency" : 68, "province" : "江苏", "timestamp" : "2018-10-28" }
{ "index": {}}
{ "latency" : 76, "province" : "江苏", "timestamp" : "2018-10-29" }
{ "index": {}}
{ "latency" : 101, "province" : "新疆", "timestamp" : "2018-10-28" }
{ "index": {}}
{ "latency" : 275, "province" : "新疆", "timestamp" : "2018-10-29" }
{ "index": {}}
{ "latency" : 166, "province" : "新疆", "timestamp" : "2018-10-29" }
{ "index": {}}
{ "latency" : 654, "province" : "新疆", "timestamp" : "2018-10-28" }
{ "index": {}}
{ "latency" : 389, "province" : "新疆", "timestamp" : "2018-10-28" }
{ "index": {}}
{ "latency" : 302, "province" : "新疆", "timestamp" : "2018-10-29" }
DSL:
#网站访问时延统计(50% 95% 99%的请求)
GET /website/logs/_search
{"size": 0,"aggs": {"latency_percentiles": {"percentiles": {"field": "latency","percents": [50,95,99]}},"latency_avg": {"avg": {"field": "latency"}}}
}
返回:
{"took": 3,"timed_out": false,"_shards": {"total": 5,"successful": 5,"skipped": 0,"failed": 0},"hits": {"total": 12,"max_score": 0,"hits": []},"aggregations": {"latency_avg": {"value": 201.91666666666666},"latency_percentiles": {"values": {"50.0": 108.5,"95.0": 627.4999999999997,"99.0": 654}}}
}
可知,
- 50%的请求 在 108.5毫秒
- 95%的请求 在 627.5毫秒
- 99%的请求 在 654毫秒
- 平均时延 201.9毫秒
数值的最大的值是多少,不是完全准确的
需求二:按地区分组后看下每个地区的 网站访问时延统计
GET /website/_search
{"size": 0,"aggs": {"group_by_province": {"terms": {"field": "province"},"aggs": {"latency_percentiles": {"percentiles": {"field": "latency","percents": [50,95,99]}},"latency_avg": {"avg": {"field": "latency"}}}}}
}
返回:
Percentiles优化 compression
compression 官方指导: 戳这里
TDigest算法,用很多节点来执行百分比的计算,近似估计,有误差,节点越多,越精准
compression ,限制节点数量最多 compression * 20 = 2000个node去计算 ,默认100
compression 越大,占用内存越多,越精准,性能越差
一个节点占用32字节,100 * 20 * 32 = 64KB
简单来说: 如果你想要percentile算法越精准,compression可以设置的越大
白话Elasticsearch48-深入聚合数据分析之 Percentiles Aggregation-percentiles百分比算法以及网站访问时延统计及Percentiles优化相关推荐
- 白话Elasticsearch37-深入聚合数据分析之案例实战Date Histogram Aggregation:统计每月电视销量
文章目录 概述 官方说明 实例: 统计每月电视销量,没有销量的月份也要统计 概述 继续跟中华石杉老师学习ES,第37篇 课程地址: https://www.roncoo.com/view/55 官方说 ...
- 白话Elasticsearch34-深入聚合数据分析之案例实战bucket嵌套实现颜色+品牌的多层下钻分析
文章目录 概述 案例 需求 解决 Step1.对每种颜色进行bucket分组 Step2.对每种颜色进行bucket分组 , 然后对每个分组再次计算平均价格 Step3.对每种颜色进行bucket分组 ...
- 白话Elasticsearch33-深入聚合数据分析之案例实战bucket + metrics 统计每种颜色电视平均价格
文章目录 概述 官方说明Avg Aggregation 案例:统计每种颜色电视平均价格 概述 继续跟中华石杉老师学习ES,第33篇 课程地址: https://www.roncoo.com/view/ ...
- 白话Elasticsearch51-深入聚合数据分析之text field聚合以及fielddata原理
文章目录 概述 官网 示例 对于分词的field执行aggregation,报错 给分词的field,设置fielddata=true,可执行 使用field.keyword,对分词的field进行聚 ...
- 白话Elasticsearch42-深入聚合数据分析之案例实战__bucket filter:统计牌品最近一个月的平均价格(Filter Aggregation)
文章目录 概述 官方说明 案例 概述 继续跟中华石杉老师学习ES,第41篇 课程地址: https://www.roncoo.com/view/55 官方说明 Filter Aggregation:戳 ...
- 白话Elasticsearch40-深入聚合数据分析之案例实战_Global Aggregation:单个品牌与所有品牌平均价格对比
文章目录 概述 Global Aggregation 案例 概述 继续跟中华石杉老师学习ES,第40篇 课程地址: https://www.roncoo.com/view/55 Global Aggr ...
- 白话Elasticsearch36-深入聚合数据分析之案例实战Histogram Aggregation:按价格区间统计电视销量和销售额
文章目录 概述 官方说明 案例 概述 继续跟中华石杉老师学习ES,第36篇 课程地址: https://www.roncoo.com/view/55 官方说明 Histogram Aggregatio ...
- 白话Elasticsearch49-深入聚合数据分析之 Percentile Ranks Aggregation-percentiles rank以及网站访问时延SLA统计
文章目录 概述 官方说明 案例 概述 继续跟中华石杉老师学习ES,第49篇 课程地址: https://www.roncoo.com/view/55 官方说明 Percentiles Ranks Ag ...
- 白话Elasticsearch39-深入聚合数据分析之案例实战_搜索+聚合: 统计指定品牌下每个颜色的销量
文章目录 概述 案例 示例 概述 继续跟中华石杉老师学习ES,第39篇 课程地址: https://www.roncoo.com/view/55 案例 需求: 统计指定品牌下每个颜色的销量 原始数据: ...
最新文章
- 图网络究竟在研究什么?从15篇研究综述看图神经网络GNN的最新研究进展
- go安装goctl进行Go Dockefile的自动生成
- 什么是Kibana?Kibana安装与配置(win_Elasticsearch)
- 操作RadGrid1,RadAjaxLoadingPanel1不出现
- TDA-04D8变送器数据上报阿里云
- php集成环境还需要mysql吗_是选择php集成环境好还是分开安装的原生版好
- 自定义oracle异常,Oracle自定义异常
- 测视力距离5米还是3米_视力表只能看到0.3,相当于近视度数200度?
- 最小生成树:Kruskal算法 和 Prim算法(第23章)
- Linux系统、版本、CPU、内存查看、硬盘空间
- MySQL课堂练习 20162315
- Perforce-Server迁移
- 2016年最新C/C++学习路线图 附完整视频资源
- Linux基本命令总结(初学者可以借鉴学习)
- 电梯新时达系统服务器密码,国内主要电梯主板密码及变频器密码
- 主板风扇转速测试软件,技嘉风扇转速调节及超频软件EasyTune6
- python中绝对值怎么表示_python如何使用绝对值
- 一篇文章告诉你雅虎这20年经历了什么
- Caffe_stu03_小训练
- The project seems to require yarn but it‘s not installed.