文章目录

  • 概述
  • 官方说明
  • 示例
  • 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优化相关推荐

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

    文章目录 概述 官方说明 实例: 统计每月电视销量,没有销量的月份也要统计 概述 继续跟中华石杉老师学习ES,第37篇 课程地址: https://www.roncoo.com/view/55 官方说 ...

  2. 白话Elasticsearch34-深入聚合数据分析之案例实战bucket嵌套实现颜色+品牌的多层下钻分析

    文章目录 概述 案例 需求 解决 Step1.对每种颜色进行bucket分组 Step2.对每种颜色进行bucket分组 , 然后对每个分组再次计算平均价格 Step3.对每种颜色进行bucket分组 ...

  3. 白话Elasticsearch33-深入聚合数据分析之案例实战bucket + metrics 统计每种颜色电视平均价格

    文章目录 概述 官方说明Avg Aggregation 案例:统计每种颜色电视平均价格 概述 继续跟中华石杉老师学习ES,第33篇 课程地址: https://www.roncoo.com/view/ ...

  4. 白话Elasticsearch51-深入聚合数据分析之text field聚合以及fielddata原理

    文章目录 概述 官网 示例 对于分词的field执行aggregation,报错 给分词的field,设置fielddata=true,可执行 使用field.keyword,对分词的field进行聚 ...

  5. 白话Elasticsearch42-深入聚合数据分析之案例实战__bucket filter:统计牌品最近一个月的平均价格(Filter Aggregation)

    文章目录 概述 官方说明 案例 概述 继续跟中华石杉老师学习ES,第41篇 课程地址: https://www.roncoo.com/view/55 官方说明 Filter Aggregation:戳 ...

  6. 白话Elasticsearch40-深入聚合数据分析之案例实战_Global Aggregation:单个品牌与所有品牌平均价格对比

    文章目录 概述 Global Aggregation 案例 概述 继续跟中华石杉老师学习ES,第40篇 课程地址: https://www.roncoo.com/view/55 Global Aggr ...

  7. 白话Elasticsearch36-深入聚合数据分析之案例实战Histogram Aggregation:按价格区间统计电视销量和销售额

    文章目录 概述 官方说明 案例 概述 继续跟中华石杉老师学习ES,第36篇 课程地址: https://www.roncoo.com/view/55 官方说明 Histogram Aggregatio ...

  8. 白话Elasticsearch49-深入聚合数据分析之 Percentile Ranks Aggregation-percentiles rank以及网站访问时延SLA统计

    文章目录 概述 官方说明 案例 概述 继续跟中华石杉老师学习ES,第49篇 课程地址: https://www.roncoo.com/view/55 官方说明 Percentiles Ranks Ag ...

  9. 白话Elasticsearch39-深入聚合数据分析之案例实战_搜索+聚合: 统计指定品牌下每个颜色的销量

    文章目录 概述 案例 示例 概述 继续跟中华石杉老师学习ES,第39篇 课程地址: https://www.roncoo.com/view/55 案例 需求: 统计指定品牌下每个颜色的销量 原始数据: ...

最新文章

  1. 图网络究竟在研究什么?从15篇研究综述看图神经网络GNN的最新研究进展
  2. go安装goctl进行Go Dockefile的自动生成
  3. 什么是Kibana?Kibana安装与配置(win_Elasticsearch)
  4. 操作RadGrid1,RadAjaxLoadingPanel1不出现
  5. TDA-04D8变送器数据上报阿里云
  6. php集成环境还需要mysql吗_是选择php集成环境好还是分开安装的原生版好
  7. 自定义oracle异常,Oracle自定义异常
  8. 测视力距离5米还是3米_视力表只能看到0.3,相当于近视度数200度?
  9. 最小生成树:Kruskal算法 和 Prim算法(第23章)
  10. Linux系统、版本、CPU、内存查看、硬盘空间
  11. MySQL课堂练习 20162315
  12. Perforce-Server迁移
  13. 2016年最新C/C++学习路线图 附完整视频资源
  14. Linux基本命令总结(初学者可以借鉴学习)
  15. 电梯新时达系统服务器密码,国内主要电梯主板密码及变频器密码
  16. 主板风扇转速测试软件,技嘉风扇转速调节及超频软件EasyTune6
  17. python中绝对值怎么表示_python如何使用绝对值
  18. 一篇文章告诉你雅虎这20年经历了什么
  19. Caffe_stu03_小训练
  20. The project seems to require yarn but it‘s not installed.

热门文章

  1. java小程序连接数据库_Java程序连接各种数据库的方法
  2. python 递归方式实现斐波那契数列
  3. NTU 课程笔记 CV6422 假设检验
  4. 文巾解题 面试题 01.04. 回文排列
  5. Win7系统下装Linux操作系统详细流程(图文)
  6. 数据挖掘学习笔记之人工神经网络(一)
  7. 新手入门深度学习 | 4-4:保存模型的N种方法
  8. QT中如何才能使用cos,sin等三角函数
  9. 【算法数据结构Java实现】时间复杂度为O(n)的最大和序列
  10. 分库分表技术演进最佳实践-修订篇