下载APP
登录
关闭
讲堂
算法训练营
Python 进阶训练营
企业服务
极客商城
客户端下载
兑换中心
渠道合作
推荐作者
当前播放: 22 | Elasticsearch聚合分析简介
00:00 / 00:00
标清
  • 标清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看

Elasticsearch核心技术与实战

共100讲 · 约1000分钟
16569
免费
01 | 课程介绍
免费
02 | 内容综述及学习建议
免费
03 | Elasticsearch简介及其发...
免费
04 | Elastic Stack家族成员及...
免费
05 | Elasticsearch的安装与...
06 | Kibana的安装与界面快速...
07 | 在Docker容器中运行Elas...
08 | Logstash安装与导入数据
09 | 基本概念:索引、文档和...
10 | 基本概念:节点、集群、分...
11 | 文档的基本CRUD与批量操...
12 | 倒排索引介绍
13 | 通过Analyzer进行分词
14 | Search API概览
15 | URI Search详解
16 | Request Body与Query ...
17 | Query String&Simple ...
18 | Dynamic Mapping和常见...
19 | 显式Mapping设置与常见参...
20 | 多字段特性及Mapping中配...
21 | Index Template和Dynami...
22 | Elasticsearch聚合分析简...
23 | 第一部分总结
24 | 基于词项和基于全文的搜索
25 | 结构化搜索
26 | 搜索的相关性算分
27 | Query&Filtering与多字...
28 | 单字符串多字段查询:Dis...
29 | 单字符串多字段查询:Mult...
30 | 多语言及中文分词与检索
31 | Space Jam,一次全文搜索...
32 | 使用Search Template和In...
33 | 综合排序:Function Scor...
34 | Term&Phrase Suggester
35 | 自动补全与基于上下文的提...
36 | 配置跨集群搜索
37 | 集群分布式模型及选主与脑...
38 | 分片与集群的故障转移
39 | 文档分布式存储
40 | 分片及其生命周期
41 | 剖析分布式查询及相关性算...
42 | 排序及Doc Values&Field...
43 | 分页与遍历:From, Siz...
44 | 处理并发读写操作
45 | Bucket & Metric聚合分...
46 | Pipeline聚合分析
47 | 作用范围与排序
48 | 聚合分析的原理及精准度问...
49 | 对象及Nested对象
50 | 文档的父子关系
51 | Update By Query &...
52 | Ingest Pipeline & Pa...
53 | Elasticsearch数据建模实...
54 | Elasticsearch数据建模最...
55 | 第二部分总结回顾
56 | 集群身份认证与用户鉴权
57 | 集群内部安全通信
58 | 集群与外部间的安全通信
59 | 常见的集群部署方式
60 | Hot & Warm架构与Shard...
61 | 分片设计及管理
62 | 如何对集群进行容量规划
63 | 在私有云上管理Elasticsea...
64 | 在公有云上管理与部署Elas...
65 | 生产环境常用配置与上线清...
66 | 监控Elasticsearch集群
67 | 诊断集群的潜在问题
68 | 解决集群Yellow与Red的问...
69 | 提升集群写性能
70 | 提升进群读性能
71 | 集群压力测试
72 | 段合并优化及注意事项
73 | 缓存及使用Breaker限制内...
74 | 一些运维的相关建议
75 | 使用Shrink与Rollover AP...
76 | 索引全生命周期管理及工具...
77 | Logstash入门及架构介绍
78 | 利用JDBC插件导入数据到El...
79 | Beats介绍
80 | 使用Index Pattern配置数...
81 | 使用Kibana Discover探索...
82 | 基本可视化组件介绍
83 | 构建Dashboard
84 | 用Monitoring和Alerting监...
85 | 用APM进行程序性能监控
86 | 用机器学习实现时序数据的...
87 | 用机器学习实现时序数据的...
88 | 用ELK进行日志管理
89 | 用Canvas做数据演示
90 | 项目需求分析及架构设计
91 | 将电影数据导入Elasticsea...
92 | 搭建你的电影搜索服务
93 | 需求分析及架构设计
94 | 数据Extract & Enrichm...
95 | 构建Insights Dashboard
96 | Elastic认证介绍
97 | 考点梳理
98 | 集群数据备份
99 | 基于Java和Elasticseach构...
100 | 结束语

精选留言(15)

  • 2019-07-11
    阮老师,你好。
    我在用 "aggs" 做聚合查询的实验时,发现,在第一行如果用 "size": 20 ,这样聚合查询会不成功,返回了类似 match_all 的查询结果。如果用 "size": 0 ,则聚合查询的结果正常。
    请问,对于“size”:0 和 20,这两个值的差别是什么?

    作者回复: 做聚合分析,应该讲size 设置为0,否则会返回查询结果。写20,aggs的相关结果会出现在比较后面而已。

    5
  • 2019-07-14
    聚合结果,有些是不准确的,老师也可以介绍一下

    作者回复: 后续有章节讲解

    5
    2
  • 2019-07-14
    GET movies/_search
    {
      "size": 0,
        "aggs": {
         "years": {
         "terms":{
                    "field":"year"
                }
         }
        }
    }
    老师,您好,我用上边的查询方式查之前的movies index,发现数据不是很全,没有1995年的,实际数据是有1995年的,这个是怎么回事呢?
    展开
    1
    1
  • 2019-11-16
    有一个问题想请教一下,在您的demo中,根据目的地进行聚合分组后会得到不到目的地的航班信息,现在我有两个需求,不知道能不能有很好的实现方式:
    1、根据目的地聚合分组后,需要返回该分组的所有航班信息列表(即文档数据),这个数据能在聚合查询的时候同事返回吗?如果能,dsl该怎么写?
    2、聚合后分组数特别多(比如说聚合分组后有1000个目的地),可以对这1000个目的地做分页查询吗?(类似于from+size分页,真分页)
  • 2019-09-30
    老师我想问下我在es中按照商品的sku的维度写入的数据,现在我根据sku中的spu no进行聚合分桶,我想拿到每个桶中第一个sku的文档,但是只能能拿到spu 的no,现在我要怎么才能拿到桶中的第一个文档啊
  • 2019-09-20
    老师好,请问后面会有这些聚合功能的原理讲解嘛?
    分布式的数据每个分片存储部分数据,像最大、最小、计数等分表计算再比较或累加,不过分组和求平均值需要全部数据后才能得到吧?ES具体是怎么实现这些聚合功能的?
  • 2019-08-26
    It's odd. in kibanan discovery, I use filter bar to search "DestCountry" which equals to "IT", then i got 2007 hits. But, when i use the follow aggs in console, it gives me the answer of 2371. i use ES7.3.
    -= agg query in console =-
    GET kibana_sample_data_flights/_search
    {
      "size": 0,
      "aggs": {
        "flight_dest": {
          "terms": {
            "field": "DestCountry"
          }
        }
      }
    }
    -= result =-
    {
      "took" : 0,
      "timed_out" : false,
      "_shards" : {
        "total" : 1,
        "successful" : 1,
        "skipped" : 0,
        "failed" : 0
      },
      "hits" : {
        "total" : {
          "value" : 10000,
          "relation" : "gte"
        },
        "max_score" : null,
        "hits" : [ ]
      },
      "aggregations" : {
        "flight_dest" : {
          "doc_count_error_upper_bound" : 0,
          "sum_other_doc_count" : 3187,
          "buckets" : [
            {
              "key" : "IT",
              "doc_count" : 2371
            },
    ......
    }
    Sorry, and msot wierd, when i use edit in DSL from filter setting in filter bar. it gave me the following answer.
    -= in DSL =-
    {
      "query": {
        "match": {
          "DestCountry": {
            "query": "IT"
          }
        }
      }
    }
    then I use this to search in console, I got the answer of 2371, which equal to using agg.
    -= query in console =-
    GET kibana_sample_data_flights/_search
    {
      "query": {
        "match": {
          "DestCountry": {
            "query": "IT"
          }
        }
      }
    }

    so, do we trust the result of filter bar in Kibana Discovery ?
    展开
    2
  • 2019-08-08
    ES中的查询以及聚合,可以跨index吗?如果可以,这部分有讲解吗?

    作者回复: 可以啊,跨index只需要在index中写上index名字,用逗号间隔,或者用通配符

    例如

    post index1,index2,logs*/_search

    代表搜索index1 index2和全部log开头的索引

  • 2019-07-24
    老师请教一下,对于nested类型的数据,怎么返回真实的命中数呢
  • 2019-07-16
    阮老师,您好!看了其他人的留言,我有一个问题,关于ES可以当成时序数据库。
    es更重要的点是获取数据,然后搜索和分析数据吧。如果当成类似hbase之类的数据库是不是有点失去重点的感觉,虽然es可以当成这种类型的库存在。
    因为前两天看了一篇文章,关于陶建辉将他写的用于物联网的TDengine的大数据平台开源了,号称比hadoop快10倍。当时我问了一个问题,就是他的这个平台与ES的区别,当时他说:我们处理的是结构化的日志数据,比如物联网、车联网的各种传感器、机器产生的数据,ES主要做文本数据的搜索和处理。
    那我的问题是:
    1)ES除了可以存储非结构数据,也可以存储结构性数据,是否可以将ES当成大数据库来用呢?
    2)由于ES在处理数据的效率比hadoop快,这只是get的效率。那write的场景,用es来落地是否合适?还是说业务操作的数据还是存储在类似RDBMS,hbase之类的库中,然后与es搞同步,目的主要是用es的搜索与处理的这些闪光功能点呢?
    展开

    作者回复: 日志处理属于es的常用case。用来做日志类数据,完全可以把es当作数据库使用,本身他就支持水平扩展。

    对于一些交易信息,对于数据的trasaction要求比较高,同时数据的update操作又很多(日志型的数据其实update很少的),这时就考虑用数据库做同步。作为同步。

    1
  • 2019-07-16
    flight_dest这个表示什么含义

    作者回复: 航班的目的地

    2
  • Y
    2019-07-12
    老师 用aggs做聚合分析的时候 sum_other_doc_count 返回的是指定聚合字段为空的数据吗 我看下来好像不是 还是说聚合分析最多返回十条buckets?
    2
  • 2019-07-10
    希望老师针对聚合场景做些性能分析的内容,比如股票场景,同时有上万人做统计分析查询,感谢
    1
  • 2019-07-10
    期待kibana是如何与这些聚合信息相结合的,另外编程语言提供的API有没有只关注结果数据的功能呢?

    作者回复: 不知道你说的只关注结果数据的功能是什么意思。

    JAVA有high level的client

    1
  • 2019-07-10
    elasticsearch可以用作时序数据库么,时序聚合分析效率如何?

    作者回复: 可以。例如grafana就可以运行在es之上。es自己也有timelion,就是用来分析时序数据的