白话Elasticsearch45-深入聚合数据分析之易并行聚合算法,三角选择原则,近似聚合算法

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 白话Elasticsearch45-深入聚合数据分析之易并行聚合算法,三角选择原则,近似聚合算法

20190806092132811.jpg


概述

继续跟中华石杉老师学习ES,第45篇

课程地址https://www.roncoo.com/view/55


易并行聚合算法

有些聚合分析的算法,是很容易就可以并行的,比如说 max


20190824234302255.png

有些聚合分析的算法,是不好并行的,比如说,count(distinct),并不是说,在每个node上,直接就出一些distinct value,就可以的,因为数据可能会很多.

20190824234555211.png

es会采取近似聚合的方式,就是采用在每个node上进行近估计的方式,得到最终的结论,cuont(distcint),假设数据有100万,近似聚合算法可能估计出来105万或者95万 --> 5%左右的错误率


近似估计后的结果,不完全准确,但是速度会很快,一般会达到完全精准的算法的性能的数十倍


三角选择原则


精准+实时+大数据 --> 3个里面只能选择2个


  • (1)精准+实时: 没有大数据,数据量很小,那么一般就是单击跑,随便你则么玩儿就可以
  • (2)精准+大数据:hadoop,批处理,非实时,可以处理海量数据,保证精准,可能会跑几个小时
  • (3)大数据+实时:es,不精准,近似估计,可能会有百分之几的错误率



近似聚合算法


近似聚合算法 : https://www.elastic.co/guide/cn/elasticsearch/guide/current/_approximate_aggregations.html


20190824234833827.png

20190824234850386.png

  • 如果采取近似估计的算法:延时在100ms左右,0.5%错误
  • 如果采取100%精准的算法:延时一般在几秒~几十秒,甚至几十分钟,几小时, 0%错误


相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
7月前
|
机器学习/深度学习 算法 Oracle
ICLR 2024:近似最优的最大损失函数量子优化算法
【2月更文挑战第27天】ICLR 2024:近似最优的最大损失函数量子优化算法
172 3
ICLR 2024:近似最优的最大损失函数量子优化算法
|
7月前
|
数据采集 数据可视化 数据挖掘
多维数据分析:使用Pandas进行复杂的数据操作和聚合
【4月更文挑战第12天】Pandas是Python的强大数据分析库,提供DataFrame数据结构进行多维数据处理。本文介绍了使用Pandas进行多维数据分析的流程:1) 导入数据(如CSV、Excel);2) 数据预处理,包括缺失值处理和类型转换;3) 数据探索,利用describe()、hist()、plot()等进行统计和可视化;4) 数据操作,如筛选、排序和分组;5) 数据聚合,通过groupby()和agg()进行计算。文中还给出了电商数据分析的案例,展示Pandas在实际应用中的价值。
312 2
|
7月前
|
存储 算法 测试技术
ArrayList集合的两个实例应用,有趣的洗牌算法与杨辉三角
ArrayList集合的两个实例应用,有趣的洗牌算法与杨辉三角
57 1
|
4月前
|
数据采集 机器学习/深度学习 数据可视化
【优秀python web系统毕设】基于python的全国招聘数据分析可视化系统,包括随机森林算法
本文介绍了一个基于Python的全国招聘数据分析可视化系统,该系统利用数据挖掘技术、随机森林算法和数据可视化技术,从招聘网站抓取数据,进行处理、分析和预测,帮助用户洞察招聘市场,为求职者和企业提供决策支持。
210 2
|
6月前
|
存储 算法 数据挖掘
图像处理之Fuzzy C Means的聚合算法
图像处理之Fuzzy C Means的聚合算法
109 7
图像处理之Fuzzy C Means的聚合算法
|
7月前
|
机器学习/深度学习 数据采集 算法
Python用逻辑回归、决策树、SVM、XGBoost 算法机器学习预测用户信贷行为数据分析报告
Python用逻辑回归、决策树、SVM、XGBoost 算法机器学习预测用户信贷行为数据分析报告
|
4月前
|
数据采集 算法 数据可视化
【优秀python算法设计】基于Python网络爬虫的今日头条新闻数据分析与热度预测模型构建的设计与实现
本文设计并实现了一个基于Python网络爬虫和机器学习模型的今日头条新闻数据分析与热度预测系统,通过数据采集、特征工程、模型构建和可视化展示,挖掘用户行为信息和内容特征,预测新闻热度,为内容推荐和舆情监控提供决策支持。
186 0
【优秀python算法设计】基于Python网络爬虫的今日头条新闻数据分析与热度预测模型构建的设计与实现
|
4月前
|
机器学习/深度学习 算法 数据可视化
Python数据分析高手修炼手册:线性回归算法,让你的数据说话更有力
【8月更文挑战第1天】在数据驱动时代,掌握数据分析技能至关重要。线性回归是最基础且强大的工具之一,能从复杂数据中提炼简单有效的模型。本文探索Python中线性回归的应用并通过实战示例加深理解。线性回归建立变量间线性关系模型:Y = β0 + β1*X + ε。使用scikit-learn库进行实战:首先安装必要库,然后加载数据、训练模型并评估性能。示例展示了如何使用`LinearRegression`模型进行房价预测,包括数据可视化。掌握线性回归,让数据“说话”更有力。
49 2
|
7月前
|
算法 数据挖掘
R语言——AVOCADO“(异常植被变化检测)算法(1990-2015数据分析)监测森林干扰和再生(含GEE影像下载代码)
R语言——AVOCADO“(异常植被变化检测)算法(1990-2015数据分析)监测森林干扰和再生(含GEE影像下载代码)
112 1