当前位置: 首页 > news >正文

Elasticsearch聚合查询速览

Es 数据分析工具 - Elasticsearch Aggregations (聚合查询)

官方文档 Aggregations | Elasticsearch Guide [7.15] | Elastic

1. Bucket aggregations 桶聚合

that group documents into buckets, also called bins, based on field values, ranges, or other criteria.
即根据字段值、范围或其他标准将文档分组成桶

a. Adjacency matrix 邻接矩阵

根据聚合条件,计算邻接矩阵

b. Composite 复合聚合

使以下聚合支持翻页排序和script field

i. Terms

ii. Histogram

iii. Date histogram

iv. GeoTile grid

c. Sampler 抽样聚合

限制任意子查询样本数量以提高效率

d. Diversified sampler 多样化的抽样聚合

限制任意子查询样本数量,为保证样本多样化,可根据字段取不同值的样本

e. Filter 过滤器聚合

在聚合过程中加入filter

f. Filters 多过滤器

将设置的filters 作为聚合条件

g. Geohash grid 地理哈希网格

h. Geotile grid 地理瓦片网格聚合

i. Global 全局聚合

同时对不包含query条件全局聚合和包含query条件的聚合进行查询

j. Histogram 直方图聚合

i. Auto-interval date histogram 自动间隔日期直方图

自动计算直方图间隔,根据日期类型字段聚合数据

ii. Date histogram 日期直方图

根据日期类型字段聚合数据

iii. Variable width histogram 变量宽度直方图

自动根据要分的桶的数量聚合,并计算出每个桶的最大,最小,中间值

k. Missing 缺失字段聚合

用于聚合缺失了某字段的doc数量

l. Terms 分词聚合

统计字段分词聚合数量

m. Rare terms 稀有分词聚合

Terms 聚合的倒叙排列,用于分析长尾效应中的尾部数据

n. Multi Terms 多分词聚合

对多个terms聚合结果进行排列组合的聚合

o. Nested 嵌套聚合

开启对nested 字段的聚合的功能

p. Reverse nested 反转嵌入

在nested 字段的子聚合查询进行反转嵌入,让嵌入的子聚合能支持其它字段

q. Children 子聚合

针对join类型数据关系子文档进行聚合

r. Parent 父聚合

针对join类型数据关系父文档进行聚合

s. Range 范围聚合

根据数字范围进行聚合

i. IP range IP 范围聚合

根据ip类型数据进行范围聚合

ii. Date range 时间范围聚合

根据给定时间范围进行聚合

iii. Geo-distance  地理距离

对于geo类型数据的距离上的range 聚合

t. nlp相关

i. Significant terms 显著关系分词分析聚合

聚合和查询条件有显著关系的分词,可以用于分析与查询分词有显著关系的字段分词

获得与分词有显著关系的分词,可用于文本内容推荐

由于会消耗大量时间和内存,建议使用sampler采样器,限制用于计算文本数量

ii. Significant text 显著关系文本分析聚合,专门为text类型设计

iii. Categorize text  文本分类(7.17新实验性特性,对内存需求较高)

2. Metric aggregations 指标聚合

that calculate metrics, such as a sum or average, from field values.
根据各字段的值,求和,平均值等指标值

a. Avg 均值

求字段平均值

b. Median absolute deviation 绝对中位差

c. Max 最大值

d. Min 最小值

e. Sum 求和

f. Boxplot 箱型图(盒须图

自动计算做“箱形图”所需数据指标数据组:最大值(Max),上四分位数(Q3),中位数(Q2),下四分位数(Q1),最小值(Min),优化过的上边缘(upper),下边缘(lower)

g. Cardinality 基数

求某个字段去重后的值的总数 类似 sql的distinct count

h. Stats 统计指标

一组指标数据的集合包括:

count,min,max,avg,sum

i. String stats 字符串统计

一组关于字符串指标数据的集合包括:

count,min_length,max_length,avg_length,entropy

j. Extended stats 扩展统计指标

一组指标数据的集合包括:

{"count" : 701138, 统计总数"min" : 0.0, 最小值"max" : 1575.0, 最大值"avg" : 0.29489772341536186, 平均值"sum" : 206764.0, 求和"sum_of_squares" : 1.1148988E7,  平方和"variance" : 15.814310117431583, 方差"variance_population" : 15.814310117431583, 总体方差"variance_sampling" : 15.814332672667033, 样本方差"std_deviation" : 3.976721025849259, 标准差"std_deviation_population" : 3.976721025849259,总体标准差"std_deviation_sampling" : 3.9767238617569403,样本标准差"std_deviation_bounds" : { 标准差边界"upper" : 8.24833977511388, 上边界"lower" : -7.658544328283156, 下边界"upper_population" : 8.24833977511388, 总体上边界"lower_population" : -7.658544328283156, 总体下边界"upper_sampling" : 8.248345446929243,样本上边界"lower_sampling" : -7.6585500000985185 样本下边界
}

k. Geo-bounds 地理边界

计算出给定地理坐标所在集合的左上和右下坐标点

l. Geo-centroid 地理中心

计算出给定地理坐标所在集合的中心点坐标

m. Geo-Line 地理线段

n. Matrix stats 矩阵统计

获得一下一组统计指标

 {"count": 50, 计数"mean": 51985.1, 均值"variance": 7.383377037755103E7, 方差"skewness": 0.5595114003506483, 偏度"kurtosis": 2.5692365287787124, 峰度"covariance": { 协方差"poverty": -21093.65836734694},"correlation": { 相关性"poverty": -0.8352655256272504}}

o. Percentile ranks 百分比排名

计算给定阈值上下数据所占百分比

p. Percentiles 百分比

自动计算个百分比区间值的分布

q. Rate 比率

只能用于date_histogram或 composite聚合的子聚合,计算子聚合时间单位换算后的平均值

r. Scripted metric 校本化指标

使用脚本计算指标值的方式,输出指标

s. T-test  t检验(用t分布理论来推论差异发生的概率)

t. Top hits 顶级命中

一般用于其它聚合查询中,展开其它聚合中的具体匹配结果

u. Top metrics 顶级指标

根据某个字段排序获取另一个字段的值

v. Value count 数值计速

或者包含某个字段的文本总数

w. Weighted avg 加权平均值

将一个字段为值,另一个字段为权,计算加权平均值

∑(value * weight) / ∑(weight)

3. Pipeline aggregations 管道聚合

that take input from other aggregations instead of documents or fields.
从其他聚合的结果中而不是文档或字段中获取输入。

a. Average bucket 平均值桶

计算桶聚合返回结果的平均值

b. Max bucket 最大桶

桶结果求最大值

c. Min bucket 最小桶

桶结果求最小值

d. Sum bucket 求和桶

桶结果求最和

e. Bucket script 桶脚本

将桶聚合返回结果作为变量,自定义聚合公式进行数据聚合

f. Bucket count K-S test 桶计数K-S检验(实验性特性)

K-S检验通过对两个分布之间的差异的分析,判断样本的观察结果是否来自制定分布的总体。

g. Bucket correlation 桶相关性聚合(实验性特性)

计算兄弟聚合中聚合的相关性

h. Bucket selector 桶选择器

对兄弟桶的返回结果进行筛选

i. Bucket sort 桶排序

对兄弟桶的返回结果进行排序

j. Cumulative cardinality 累计基数

在histogram (or date_histogram) 聚合中,对基数聚合结果进行累计求和

k. Cumulative sum 累计求和

在histogram (or date_histogram) 聚合中,对求和聚合结果进行累计求和

l. Derivative 派生的

在histogram (or date_histogram) 聚合中,对聚合桶的结果进行逐次求差

m. Stats bucket 统计桶

提供对桶返回结果的一组统计指标

n. Extended stats bucket 扩展的统计桶

提供对桶返回结果的一组扩展后的统计指标

o. Inference bucket 推理桶

使用已经训练好的es机器学习模型,对桶结果进行预测

p. Moving function 移动函数

在指定大小的桶返回结果的子集中进行聚合计算

q. Moving percentiles 移动百分比

在指定大小的桶返回结果的子集中进行百分比聚合计算

r. Normalize 常态化

对桶返回结果进行一些预定义的二次运算

s. Percentiles bucket 百分比桶

对桶返回结果进行百分比分布运算

t. Serial differencing 序列差分

一种计算桶聚合结果周期性的计算方式

相关文章:

Elasticsearch聚合查询速览

Es 数据分析工具 - Elasticsearch Aggregations (聚合查询) 官方文档 Aggregations | Elasticsearch Guide [7.15] | Elastic 1. Bucket aggregations 桶聚合 that group documents into buckets, also called bins, based on field values, ranges, o…...

CEC2017:鱼鹰优化算法(Osprey optimization algorithm,OOA)求解cec2017(提供MATLAB代码)

一、鱼鹰优化算法简介 鱼鹰优化算法(Osprey optimization algorithm,OOA)由Mohammad Dehghani 和 Pavel Trojovsk于2023年提出,其模拟鱼鹰的捕食行为。 鱼鹰是鹰形目、鹗科、鹗属的仅有的一种中型猛禽。雌雄相似。体长51-64厘米…...

Vue3 企业级项目实战:通关 Vue3 企业级项目开发,升职加薪快人一步

Vue3 企业级项目实战 - 程序员十三 - 掘金小册Vue3 Element Plus Spring Boot 企业级项目开发,升职加薪,快人一步。。「Vue3 企业级项目实战」由程序员十三撰写,2744人购买https://s.juejin.cn/ds/S2RkR9F/ 课程介绍 很高兴为大家介绍这个…...

vue样式绑定(v-if)

文章目录一.第一次用vue框架二.要求:1.定义两种样式,一种描述正确的状态,一种描述错误的状态。2.在结构代码中定义一个块,实现绑定正确的样式状态。3.定义一个按钮,实现正确和错误两种状态的class切换。三.源代码四.效果一.第一次…...

无需公网IP,安全稳定实现U8C异地访问

用友是全球领先的企业云服务与软件提供商,在财务、人力、供应链、采购、制造、营销、研发、项目、资产、协同等领域为客户提供数字化、智能化、社会化的企业云服务产品与解决方案。 U8C是用友针对成长型、创新型企业,提供企业级ERP整体解决方案。在系统…...

Graph Neural Network(GNN)图神经网络

Graph Neural Network(GNN)图神经网络,是一种旨在对图结构数据就行操作的深度学习算法。它可以很自然地表示现实世界中的很多问题,包括社交网络,分子结构和交通网络等。GNN旨在处理此类图结构数据,并对图中的节点和边进行预测或执…...

JSTL核心库的简单使用

JSTL核心库的简单使用 7.1考试重点 7.1.1c:out输出数据 考试重点就是c的相关的 jar包下载地址:Apache Tomcat - Apache Taglibs Downloads 看会典型应用就可以<% page contentType"text/html;charsetUTF-8" language"java" %> <% taglib uri"…...

ffmpeg.dll丢失怎么办,有什么修复ffmpeg.dll的方法

如果你在运行某些音视频软件或游戏时遇到了“ffmpeg.dll丢失”的错误消息&#xff0c;这意味着你的Windows系统中缺少了ffmpeg.dll文件&#xff0c;这是一个必要的动态链接库&#xff08;DLL&#xff09;文件&#xff0c;用于支持许多音视频软件和游戏的运行。在这篇文章中&…...

【学习笔记】NOIP爆零赛9

这场考炸了&#xff0c;不过也还好&#xff0c;正好给自己警醒的作用 t1t1t1应该是想到正解了&#xff0c;就是最后边界那个地方还是没有想清楚&#xff0c;哎这种交互题卡询问次数还是挺难受的&#xff0c;并且似乎我对于这种细节并不能很好把握。然后就少了50pts50pts50pts是…...

SpringMVC的常用组件和工作流程及部分注解解析

一丶SpringMVC常用的组件 1.前端控制器DispatcherServlet 作用&#xff1a;统一处理请求和响应。除此之外还是整个流程控制的中心&#xff0c;由 DispatcherServlet 来调用其他组件&#xff0c;处理用户的请求 接收请求&#xff0c;响应结果&#xff0c;相当于转发器&#xff…...

创建Firebase项目并接入Firebase推送: Firebase Cloud Messaging (FCM)

1.FCM简介&#xff1a;Firebase Cloud Messaging (FCM) 是一种跨平台消息传递解决方案&#xff0c;可供您可靠地传递消息&#xff0c;而且还是免费的服务。支持 Android&#xff0c;IOS,Web,Flutter,Unity.消息类型可以使用 FCM 向客户端发送两种类型的消息&#xff1a;通知消息…...

MyBatis的简单使用

MyBatis是一个优秀的持久型框架用于简化JDBC开发&#xff0c;JDBC的原生写法普遍都很麻烦&#xff0c;还要写原汁原味的sql语句&#xff0c;mybatis将很多东西都放到了配置文件里面然后用少量代码简化了免除了几乎所有的JDBC代码以及设定参数和获取结果集的工作。MyBatis 可以通…...

最新的Windows docker安装方法

什么是Docker&#xff1f;关于Docker的相关概述&#xff0c;请看&#xff1a;Docker_面向架构编程的博客-CSDN博客在Windows10 or Windows11中安装docker主要就两步&#xff1a;1.安装wsl22. 安装docker一、安装WSL2安装wslwsl --install然后重启一下电脑在cmd窗口可以查看自己…...

2023软件测试工程师涨薪攻略,3年如何达到30K

1.软件测试如何实现涨薪 首先涨薪并不是从8000涨到9000这种涨薪&#xff0c;而是从8000涨到15K加到25K的涨薪。基本上三年之内就可以实现。 如果我们只是普通的有应届毕业生或者是普通本科那我们就只能从小公司开始慢慢往上走。 有些同学想去做测试&#xff0c;是希望能够日…...

【算法题】1927. 求和游戏

题目&#xff1a; Alice 和 Bob 玩一个游戏&#xff0c;两人轮流行动&#xff0c;Alice 先手 。 给你一个 偶数长度 的字符串 num &#xff0c;每一个字符为数字字符或者 ‘?’ 。每一次操作中&#xff0c;如果 num 中至少有一个 ‘?’ &#xff0c;那么玩家可以执行以下操…...

有趣的 Kotlin 0x10:操作符 ..<

操作符 …< ..< 操作符是 Kotlin 在 1.7.20 版本中引入的不包含尾部元素的左闭右开区间操作符。之前我们使用的比较多的操作符可能是 .. 和 until&#xff0c;两者均表示区间&#xff0c;前者是闭区间&#xff0c;后者则表示不包含末端元素的左闭右开区间。 OptIn(Expe…...

mysql数据库之索引使用原则

一、最左前缀法则。 1、如果索引使用了多列&#xff08;联合索引&#xff09;&#xff0c;要遵守最左前缀法则。最左前缀法则指的是查询从索引的最左列开始&#xff0c;并且不跳过索引中的列。 如果跳跃到某一列&#xff0c;索引将部分失效&#xff08;后面的字段索引失效&am…...

【Java】Spring Boot 日志文件

文章目录SpringBoot日志文件1. 日志有什么用2. 日志怎么用3. 自定义日志打印3.1 在程序中得到日志对象3.2 使用日志对象打印日志4. 日志级别4.1 日志级别有什么用&#xff1f;4.2 日志级别的分类与使用5. 日志持久化6. 更简单的日志输出--lombok6.1 添加 lombok 依赖6.2 输出日…...

软件项目管理计算题复习(1)

软件项目管理计算题复习&#xff08;1&#xff09; 1.关键路径&#xff1a;决定项目最早完成的一系列的活动。网络图中最长的路&#xff0c;最少的时差&#xff0c;总是差为0&#xff0c;也是关键路径。 2.最短路径也是最短工期 3.总时差&#xff1a;最晚开始-最早开始最晚结…...

BMI160 BOSCH/博世 六轴 加速度 陀螺仪 传感器

BMI160 6轴惯性运动传感器&#xff0c;采用MEMS传感器封装&#xff0c;将16位3轴加速度计和超低功耗3轴陀螺仪集成在一起。当加速度计和陀螺仪在全速模式下运行时&#xff0c;耗电典型值低至950A&#xff0c;仅为市场上同类产品耗电量的50%或者更低。 Bosch BMI160专为智能手机…...

MongoDB学习和应用(高效的非关系型数据库)

一丶 MongoDB简介 对于社交类软件的功能&#xff0c;我们需要对它的功能特点进行分析&#xff1a; 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具&#xff1a; mysql&#xff1a;关系型数据库&am…...

python/java环境配置

环境变量放一起 python&#xff1a; 1.首先下载Python Python下载地址&#xff1a;Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个&#xff0c;然后自定义&#xff0c;全选 可以把前4个选上 3.环境配置 1&#xff09;搜高级系统设置 2…...

Qt Widget类解析与代码注释

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码&#xff0c;写上注释 当然可以&#xff01;这段代码是 Qt …...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中&#xff0c;元素的定位通过 position 属性控制&#xff0c;共有 5 种定位模式&#xff1a;static&#xff08;静态定位&#xff09;、relative&#xff08;相对定位&#xff09;、absolute&#xff08;绝对定位&#xff09;、fixed&#xff08;固定定位&#xff09;和…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍

文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结&#xff1a; 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析&#xff1a; 实际业务去理解体会统一注…...

网络编程(UDP编程)

思维导图 UDP基础编程&#xff08;单播&#xff09; 1.流程图 服务器&#xff1a;短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...

HDFS分布式存储 zookeeper

hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架&#xff0c;允许使用简单的变成模型跨计算机对大型集群进行分布式处理&#xff08;1.海量的数据存储 2.海量数据的计算&#xff09;Hadoop核心组件 hdfs&#xff08;分布式文件存储系统&#xff09;&a…...

Yolov8 目标检测蒸馏学习记录

yolov8系列模型蒸馏基本流程&#xff0c;代码下载&#xff1a;这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中&#xff0c;**知识蒸馏&#xff08;Knowledge Distillation&#xff09;**被广泛应用&#xff0c;作为提升模型…...

(一)单例模式

一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

作为测试我们应该关注redis哪些方面

1、功能测试 数据结构操作&#xff1a;验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化&#xff1a;测试aof和aof持久化机制&#xff0c;确保数据在开启后正确恢复。 事务&#xff1a;检查事务的原子性和回滚机制。 发布订阅&#xff1a;确保消息正确传递。 2、性…...