ElasticSearch 2 (27) - 信息聚合系列之故事开始
ElasticSearch 2 (27) - 信息聚合系列之故事开始
摘要
到目前为止,本书都在着重介绍搜索。对于搜索,我们有查询条件以及与查找到与条件匹配的集合。这个过程就和如大海捞针一样。
对于聚合,我们站在远处总观数据。与查看单个文档不同,我们想要对数据集合进行整体的分析和总结。
版本
elasticsearch版本: elasticsearch-2.x
内容
到目前为止,本书都在着重介绍搜索。对于搜索,我们有查询条件以及与查找到与条件匹配的集合。这个过程就和如大海捞针一样。
对于聚合,我们站在远处总观数据。与查看单个文档不同,我们想要对数据集合进行整体的分析和总结:
- 大海里有多少针?
- 针的平均长度是多少?
- 所有长度的中位数是什么?按生产商分类结果会是怎样?
- 每个月大海里面会掉进多少根针?
聚合还可以回答更为详细的问题:
- 销量最好的针的生产商是哪个?
- 存在不普通或异常的针吗?
聚合允许我们问一些更复杂的数据问题。尽管和搜索的功能完全不同,但它利用相同的数据结构,这使聚合能够快速运行 近乎实时,就像搜索一样。
这对报表和仪表盘是强大的支持,不须要对所有数据进行汇总(不太好用的 Hadoop任务要执行一个星期),我们可以实时看到数据,并做出快速响应。报表随着数据的变化而变化,而不是那些预先计算好却已经过时的无关信息。
最后,聚合操作是与查询请求并行执行的,这意味着对于相同数据、同一请求,我们可以搜索、过滤文档,同时又能完成分析工作。由于聚合是在用户搜索的背景下计算的,我们不仅仅是显示四星级酒店,而是显示与搜索条件相匹配的四星级酒店。
聚合的功能非常强大以至于很多公司建立庞大的 Elasticsearch 集群的目的只是为了分析。
参考
ElasticSearch 2 (27) - 信息聚合系列之故事开始的更多相关文章
- ElasticSearch 2 (37) - 信息聚合系列之内存与延时
ElasticSearch 2 (37) - 信息聚合系列之内存与延时 摘要 控制内存使用与延时 版本 elasticsearch版本: elasticsearch-2.x 内容 Fielddata ...
- ElasticSearch 2 (38) - 信息聚合系列之结束与思考
ElasticSearch 2 (38) - 信息聚合系列之结束与思考 摘要 版本 elasticsearch版本: elasticsearch-2.x 内容 本小节涵盖了许多基本理论以及很多深入的技 ...
- ElasticSearch 2 (36) - 信息聚合系列之显著项
ElasticSearch 2 (36) - 信息聚合系列之显著项 摘要 significant_terms(SigTerms)聚合与其他聚合都不相同.目前为止我们看到的所有聚合在本质上都是简单的数学 ...
- ElasticSearch 2 (35) - 信息聚合系列之近似聚合
ElasticSearch 2 (35) - 信息聚合系列之近似聚合 摘要 如果所有的数据都在一台机器上,那么生活会容易许多,CS201 课商教的经典算法就足够应付这些问题.但如果所有的数据都在一台机 ...
- ElasticSearch 2 (34) - 信息聚合系列之多值排序
ElasticSearch 2 (34) - 信息聚合系列之多值排序 摘要 多值桶(terms.histogram 和 date_histogram)动态生成很多桶,Elasticsearch 是如何 ...
- ElasticSearch 2 (33) - 信息聚合系列之聚合过滤
ElasticSearch 2 (33) - 信息聚合系列之聚合过滤 摘要 聚合范围限定还有一个自然的扩展就是过滤.因为聚合是在查询结果范围内操作的,任何可以适用于查询的过滤器也可以应用在聚合上. 版 ...
- ElasticSearch 2 (32) - 信息聚合系列之范围限定
ElasticSearch 2 (32) - 信息聚合系列之范围限定 摘要 到目前为止我们看到的所有聚合的例子都省略了搜索请求,完整的请求就是聚合本身. 聚合与搜索请求同时执行,但是我们需要理解一个新 ...
- ElasticSearch 2 (31) - 信息聚合系列之时间处理
ElasticSearch 2 (31) - 信息聚合系列之时间处理 摘要 如果说搜索是 Elasticsearch 里最受欢迎的功能,那么按时间创建直方图一定排在第二位.为什么需要使用时间直方图? ...
- ElasticSearch 2 (30) - 信息聚合系列之条形图
ElasticSearch 2 (30) - 信息聚合系列之条形图 摘要 版本 elasticsearch版本: elasticsearch-2.x 内容 聚合还有一个令人激动的特性就是能够十分容易地 ...
随机推荐
- [C++] set与multiset的常用函数
参考资料:[C++ STL]Set和Multiset set 与 multiset set不允许重复 multiset允许重复 例: set : 1 2 3 4 5 6 multiset : 1 2 ...
- 【转】 最新版chrome谷歌浏览器Ajax跨域调试问题
Ajax本身是不支持跨域的,而我们在开发工作中,可能会遇到本地开发环境未配置相关代码,需要到其他服务器上获取数据的情况,尤其在用HTML5开发app的过程中,前后台完全分离,使用Ajax进行数据交互, ...
- Git系列七之备份迁移 升级 恢复管理
0.Gitlab安装 1.安装和配置必要的依赖关系在CentOS7,下面的命令将在系统防火墙打开HTTP和SSH访问. yum install curl openssh-server postfix ...
- ethereum/EIPs-725
https://github.com/ethereum/EIPs/blob/master/EIPS/eip-725.md eip title author discussions-to status ...
- linux IP 命令使用举例(转)
ip 1.作用ip是iproute2软件包里面的一个强大的网络配置工具,它能够替代一些传统的网络管理工具,例如ifconfig.route等,使用权限为超级用户.几乎所有的Linux发行版本都支持该命 ...
- OpenCV——距离变换与分水岭算法的(图像分割)
C++: void distanceTransform(InputArray src, OutputArray dst, int distanceType, int maskSize) 参数详解: I ...
- defaultdict - update - pymysql
defaultdict 的例子 使用list作为default_factory,他很容易的将一个以键值形式表现的序列分组成一个字典列表 >>> s = [('yellow', 1), ...
- jqgrid 配置行号及行号的宽度
有时,我们想把jqgrid的行号按指定的宽度显示出来,如何实现? 通过 rownumbers:true 设置启用行号 通过 rownumWidth 配置行号列的宽度 $("#jqGrid& ...
- Only one complex type allowed as argument to a web api controller action.
错误内容: message":"An error has occurred.","exceptionMessage":"Only one c ...
- 【转】Google Chrome中顺时针/逆时针滚动圆的含义
当浏览器处于以下状态时,看起来好像圆圈是逆时针滚动的: 解析主机名 连接服务器 等待响应(从服务器发送第一个字节之前?) 当浏览器处于以下状态时,圆圈似乎顺时针滚动: 加载页面或引用的资源 在标签页中 ...