es - elasticsearch - aggs - pipeline - cumulative_cardinality

2023-11-02 07:10

本文主要是介绍es - elasticsearch - aggs - pipeline - cumulative_cardinality,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。

问:cumulative_cardinality有什么特点?
答:
在这里插入图片描述
问:cumulative_cardinality如何使用?
答:

DELETE /cumulative_cardinality_testPUT /cumulative_cardinality_test
{"mappings": {"properties": {"type": {"type": "integer"},"num": {"type": "integer"},"date": {"type": "date"}}}
}POST /cumulative_cardinality_test/_bulk
{"index": {"_id": 1}}
{"type": 1, "num": 4, "date": "1989-01-10"}
{"index": {"_id": 2}}
{"type": 2, "num": 4, "date": "1988-01-10"}
{"index": {"_id": 3}}
{"type": 1, "num": 5, "date": "1990-01-10"}
{"index": {"_id": 4}}
{"type": 2, "num": 9, "date": "1990-01-10"}
{"index": {"_id": 5}}
{"type": 1, "num": 6, "date": "1989-01-10"}GET /cumulative_cardinality_test/_search
{"size": 0,"aggs": {"cumulative_aggs": {"date_histogram": {"field": "date","calendar_interval": "year"},"aggs": {"cardinality_aggs": {"cardinality": {"field": "num"}},"cumu_aggs": {"cumulative_cardinality": {"buckets_path": "cardinality_aggs"}},"derivative_aggs": {"derivative": {"buckets_path": "cumu_aggs"}}}}}
}# 结果
{"took" : 862,"timed_out" : false,"_shards" : {"total" : 1,"successful" : 1,"skipped" : 0,"failed" : 0},"hits" : {"total" : {"value" : 5,"relation" : "eq"},"max_score" : null,"hits" : [ ]},"aggregations" : {"cumulative_aggs" : {"buckets" : [{"key_as_string" : "1988-01-01T00:00:00.000Z","key" : 567993600000,"doc_count" : 1,"cardinality_aggs" : {"value" : 1},"cumu_aggs" : {"value" : 1}},{"key_as_string" : "1989-01-01T00:00:00.000Z","key" : 599616000000,"doc_count" : 2,// 当前bucket唯一值(基数)数量"cardinality_aggs" : {"value" : 2},// 从开始到现在bucket的累积基数的数量"cumu_aggs" : {"value" : 2},// 和上一个bucket相比增加的基数的数量"derivative_aggs" : {"value" : 1.0}},{"key_as_string" : "1990-01-01T00:00:00.000Z","key" : 631152000000,"doc_count" : 2,"cardinality_aggs" : {"value" : 2},"cumu_aggs" : {"value" : 4},"derivative_aggs" : {"value" : 2.0}}]}}
}

这篇关于es - elasticsearch - aggs - pipeline - cumulative_cardinality的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/328967

相关文章

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

对Powerdesigner中的Cardinality基数理解

原文链接:http://blog.sina.com.cn/s/blog_9bbafb790101bxwj.html 基数(Cardinality)用实体间实例的数值对应关系表示,它反映了两个实体间的数值联系,它从父实体的角度描述了一对实体间的数量维度,换句话说,基数中的数字是描述父实体在子表中可能出现的次数范围,基数实际是1个闭区间。基数可能是: (1)0,1 一个父实体,在子表中可能出现1

ElasticSearch的DSL查询⑤(ES数据聚合、DSL语法数据聚合、RestClient数据聚合)

目录 一、数据聚合 1.1 DSL实现聚合 1.1.1 Bucket聚合  1.1.2 带条件聚合 1.1.3 Metric聚合 1.1.4 总结 2.1 RestClient实现聚合 2.1.1 Bucket聚合 2.1.2 带条件聚合 2.2.3 Metric聚合 一、数据聚合 聚合(aggregations)可以让我们极其方便的实现对数据的统计、分析、运算。例如:

OpenGL ES学习总结:基础知识简介

什么是OpenGL ES? OpenGL ES (为OpenGL for Embedded System的缩写) 为适用于嵌入式系统的一个免费二维和三维图形库。 为桌面版本OpenGL 的一个子集。 OpenGL ES管道(Pipeline) OpenGL ES 1.x 的工序是固定的,称为Fix-Function Pipeline,可以想象一个带有很多控制开关的机器,尽管加工

OpenGL ES 2.0渲染管线

http://codingnow.cn/opengles/1504.html Opengl es 2.0实现了可编程的图形管线,比起1.x的固定管线要复杂和灵活很多,由两部分规范组成:Opengl es 2.0 API规范和Opengl es着色语言规范。下图是Opengl es 2.0渲染管线,阴影部分是opengl es 2.0的可编程阶段。   1. 顶点着色器(Vert

【docker】基于docker-compose 安装elasticsearch + kibana + ik分词器(8.10.4版本)

记录下,使用 docker-compose 安装 Elasticsearch 和 Kibana,并配置 IK 分词器,你可以按照以下步骤进行。此过程适用于 Elasticsearch 和 Kibana 8.10.4 版本。 安装 首先,在你的工作目录下创建一个 docker-compose.yml 文件,用于配置 Elasticsearch 和 Kibana 的服务。 version:

ElasticSearch底层原理简析

1.ElasticSearch简述 ElastiaSearch(以下简称ES)是一个基于Lucene的搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎,支持RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。ES设计用于云计算中,能够进行实时搜索,支持PB级搜索,具有稳定,可靠,快速,安装使用方便等

Jenkins--pipeline版本管理

为了提高脚本可维护性,更好的管理pipeline脚本,我们可以在项目配置中修改流水线定义,使用版本管理脚本,选择pipeline script from SCM: 我们看到现在SCM是无,因为还没有安装版本管理工具,先需要到插件管理中安装git。 安装后,在流水线设置的SCM中就能查看到Git: 在Repository URL中添加版本管理工具github或码云的仓库地址: 在Cred

Jenkins--pipeline认识及与RF文件的结合应用

什么是pipeline? Pipeline,就是可运行在Jenkins上的工作流框架,将原本独立运行的单个或多个节点任务连接起来,实现单个任务难以完成的复杂流程编排与可视化。 为什么要使用pipeline? 1.流程可视化显示 2.可自定义流程任务 3.所有步骤代码化实现 如何使用pipeline 首先需要安装pipeline插件: 流水线有声明式和脚本式的流水线语法 流水线结构介绍 Node:

使用Azure Devops Pipeline将Docker应用部署到你的Raspberry Pi上

文章目录 1. 添加树莓派到 Agent Pool1.1 添加pool1.2 添加agent 2. 将树莓派添加到 Deployment Pool2.1 添加pool2.2 添加target 3. 添加编译流水线3.1 添加编译命令3.2 配置触发器 4. 添加发布流水线4.1 添加命令行4.2 配置artifact和触发器 5. 完成 1. 添加树莓派到 Agent Pool