悟空,拿我的打狗棒来

社区日报 第752期 (2019-10-15)

1、Elasticsearch 冷热集群架构实战。
http://tinyurl.com/y2w36jdq
2、提升 elasticsearch 写入速度的案例分享。
http://tinyurl.com/y3ql4oov
3、基于elasticsearch的自定义业务告警的设计思路
http://tinyurl.com/yyls4xzt

编辑:叮咚光军

归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1、Elasticsearch 冷热集群架构实战。
http://tinyurl.com/y2w36jdq
2、提升 elasticsearch 写入速度的案例分享。
http://tinyurl.com/y3ql4oov
3、基于elasticsearch的自定义业务告警的设计思路
http://tinyurl.com/yyls4xzt

编辑:叮咚光军

归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

社区日报 第751期 (2019-10-14)

1、使用脚本方便地诊断shard状态
http://t.cn/AiuRWQh7

2、有效缩减集群元数据,降低master节点压力---shrink 
http://t.cn/AiuRlChQ

3、记一次elasticsearch索引数据后但查不到
http://t.cn/AiuRjwSY

编辑:cyberdak
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 
 
继续阅读 »
1、使用脚本方便地诊断shard状态
http://t.cn/AiuRWQh7

2、有效缩减集群元数据,降低master节点压力---shrink 
http://t.cn/AiuRlChQ

3、记一次elasticsearch索引数据后但查不到
http://t.cn/AiuRjwSY

编辑:cyberdak
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 
  收起阅读 »

社区日报 第750期 (2019-10-13)

1.您的执行人员是否知道管理ELK需要做什么?
http://tinyurl.com/y6sfo5j4
2.使用Helm在Kubernetes上部署ELK。
http://tinyurl.com/y4tnlhat
3.(自备梯子)关于智能合约的真相。
http://tinyurl.com/y7epzwvk

编辑:至尊宝
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1.您的执行人员是否知道管理ELK需要做什么?
http://tinyurl.com/y6sfo5j4
2.使用Helm在Kubernetes上部署ELK。
http://tinyurl.com/y4tnlhat
3.(自备梯子)关于智能合约的真相。
http://tinyurl.com/y7epzwvk

编辑:至尊宝
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

社区日报 第749期 (2019-10-12)

1.ES面试集锦 http://t.cn/Aiupf61Z

2.Elasticsearch各版本升级核心内容必看 http://t.cn/AiupttNg

3.基于ELK的数据分析平台 http://t.cn/RQv63PX

继续阅读 »

1.ES面试集锦 http://t.cn/Aiupf61Z

2.Elasticsearch各版本升级核心内容必看 http://t.cn/AiupttNg

3.基于ELK的数据分析平台 http://t.cn/RQv63PX

收起阅读 »

社区日报 第748期 (2019-10-11)


1、Elasticsearch中的身份验证和授权使用解读
https://tinyurl.com/y235bygv
2、kafka连接Elasticsearch7.X
https://tinyurl.com/y56v2h26
3、ElasticSearch的JAVA API使用教程
https://tinyurl.com/y2s4d3d6


编辑:铭毅天下
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 
继续阅读 »

1、Elasticsearch中的身份验证和授权使用解读
https://tinyurl.com/y235bygv
2、kafka连接Elasticsearch7.X
https://tinyurl.com/y56v2h26
3、ElasticSearch的JAVA API使用教程
https://tinyurl.com/y2s4d3d6


编辑:铭毅天下
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 
收起阅读 »

社区日报 第747期 (2019-10-10)

1、Elasticsearch 性能调优,让你的集群飞起来
http://tinyurl.com/y44asjr9
2、对 Golang 代码调用 Elasticsearch 进行单元测试
http://tinyurl.com/y4zvkt4r
3、Kibana如何制作出好看酷炫的图表
http://tinyurl.com/yxgajzkz
 
编辑:江水
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
 
 
继续阅读 »
1、Elasticsearch 性能调优,让你的集群飞起来
http://tinyurl.com/y44asjr9
2、对 Golang 代码调用 Elasticsearch 进行单元测试
http://tinyurl.com/y4zvkt4r
3、Kibana如何制作出好看酷炫的图表
http://tinyurl.com/yxgajzkz
 
编辑:江水
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
 
  收起阅读 »

ES Aggs根据聚合的结果(数值)进行过滤

前言

我们在使用聚合时总是有各种各样的聚合需求,其中一个比较常用的就是根据聚合的结果过滤聚合的桶,例如:1、每个IP登录次数超过5次的IP;2、每个IP登录人数超过2的IP。 还有我之前的一个案例,访问量超过1000的人数,这些都是很常见的统计需求。

案例需求

我们在使用聚合计算的时候一般都有两类,一种是计算文档的数量,另一种是计算文档内字段的值的数量(去重计算)或者值的数学计算。两种聚合计算在过滤的时候采用不同的方法来计算。

我们使用以下案例来说明两种过滤的不同: 用户每次登录都会记录一个登录记录:

{"userID":"a","IP":"10.70.25.1","time":"2019-10-10 12:12:12.222"}

然后提出以下两个需求: 1、每个IP登录次数超过5次的IP; 2、每个IP登录人数超过2的IP。

实现

每个IP登录次数超过5次的IP

这个是对登录记录个数的桶聚合统计,然后过滤。使用IP做term聚合,就可以得出每个IP的登录次数,然后term聚合中有一个参数min_doc_count这个字段就可以对文档数量进行过滤,具体的语句如下: 查询语句

{
  "aggs": {
    "IP": {
      "terms": {
        "field": "IP",
        "size": 3000,
        "order": {
          "_count": "desc"
        },
        "min_doc_count": 5
      }
    }
  },
  "size": 0
}

结果

{
  "took" : 614,
  "timed_out" : false,
  "num_reduce_phases" : 3,
  "_shards" : {
    "total" : 1105,
    "successful" : 1105,
    "skipped" : 75,
    "failed" : 0
  },
  "hits" : {
    "total" : 2826,
    "max_score" : 0.0,
    "hits" : [ ]
  },
  "aggregations" : {
    "IP" : {
      "doc_count_error_upper_bound" : 0,
      "sum_other_doc_count" : 0,
      "buckets" : [
        {
          "key" : "10.25.90.139",
          "doc_count" : 61
        },
        {
          "key" : "10.25.78.146",
          "doc_count" : 45
        },
        {
          "key" : "10.25.94.22",
          "doc_count" : 21
        },
        {
          "key" : "10.25.75.52",
          "doc_count" : 18
        },
        {
          "key" : "10.25.89.32",
          "doc_count" : 13
        },
        {
          "key" : "10.25.93.243",
          "doc_count" : 10
        },
        {
          "key" : "10.25.78.189",
          "doc_count" : 9
        },
        {
          "key" : "10.25.90.82",
          "doc_count" : 8
        },
        {
          "key" : "10.25.91.240",
          "doc_count" : 8
        },
        {
          "key" : "10.25.90.57",
          "doc_count" : 7
        },
        {
          "key" : "10.25.91.251",
          "doc_count" : 7
        },
        {
          "key" : "10.25.95.166",
          "doc_count" : 6
        },
        {
          "key" : "10.25.89.33",
          "doc_count" : 5
        },
        {
          "key" : "10.25.90.88",
          "doc_count" : 5
        },
        {
          "key" : "10.25.92.53",
          "doc_count" : 5
        }
      ]
    }
  }
}

每个IP登录人数超过2的IP

这个是对登录记录用户ID的去重数聚合,然后过滤。对用户ID进行去重可以使用Cardinality Aggregation聚合,然后再使用Bucket Selector Aggregation聚合过滤器过滤数据。具体内容如下: 查询语句

{
  "aggs": {
    "IP": {
      "terms": {
        "field": "IP",
        "size": 3000,
        "order": {
          "distinct": "desc"
        },
        "min_doc_count": 5
      },
      "aggs": {
        "distinct": {
          "cardinality": {
            "field": "IP.keyword"
          }
        },
        "dd":{
          "bucket_selector": {
            "buckets_path": {"userCount":"distinct"},
            "script": "params.userCount > 2"
          }
        }
      }
    }
  },
  "size": 0
}

结果

{
  "took" : 317,
  "timed_out" : false,
  "num_reduce_phases" : 3,
  "_shards" : {
    "total" : 1105,
    "successful" : 1105,
    "skipped" : 75,
    "failed" : 0
  },
  "hits" : {
    "total" : 2826,
    "max_score" : 0.0,
    "hits" : [ ]
  },
  "aggregations" : {
    "IP" : {
      "doc_count_error_upper_bound" : 0,
      "sum_other_doc_count" : 0,
      "buckets" : [
        {
          "key" : "10.25.75.52",
          "doc_count" : 18,
          "distinct" : {
            "value" : 4
          }
        },
        {
          "key" : "10.25.78.146",
          "doc_count" : 45,
          "distinct" : {
            "value" : 3
          }
        },
        {
          "key" : "10.25.90.139",
          "doc_count" : 61,
          "distinct" : {
            "value" : 3
          }
        },
        {
          "key" : "10.25.91.240",
          "doc_count" : 8,
          "distinct" : {
            "value" : 3
          }
        },
        {
          "key" : "10.25.94.22",
          "doc_count" : 21,
          "distinct" : {
            "value" : 3
          }
        }
      ]
    }
  }
}

桶聚合选择器: https://www.elastic.co/guide/en/elasticsearch/reference/6.8/search-aggregations-pipeline-bucket-selector-aggregation.html

继续阅读 »

前言

我们在使用聚合时总是有各种各样的聚合需求,其中一个比较常用的就是根据聚合的结果过滤聚合的桶,例如:1、每个IP登录次数超过5次的IP;2、每个IP登录人数超过2的IP。 还有我之前的一个案例,访问量超过1000的人数,这些都是很常见的统计需求。

案例需求

我们在使用聚合计算的时候一般都有两类,一种是计算文档的数量,另一种是计算文档内字段的值的数量(去重计算)或者值的数学计算。两种聚合计算在过滤的时候采用不同的方法来计算。

我们使用以下案例来说明两种过滤的不同: 用户每次登录都会记录一个登录记录:

{"userID":"a","IP":"10.70.25.1","time":"2019-10-10 12:12:12.222"}

然后提出以下两个需求: 1、每个IP登录次数超过5次的IP; 2、每个IP登录人数超过2的IP。

实现

每个IP登录次数超过5次的IP

这个是对登录记录个数的桶聚合统计,然后过滤。使用IP做term聚合,就可以得出每个IP的登录次数,然后term聚合中有一个参数min_doc_count这个字段就可以对文档数量进行过滤,具体的语句如下: 查询语句

{
  "aggs": {
    "IP": {
      "terms": {
        "field": "IP",
        "size": 3000,
        "order": {
          "_count": "desc"
        },
        "min_doc_count": 5
      }
    }
  },
  "size": 0
}

结果

{
  "took" : 614,
  "timed_out" : false,
  "num_reduce_phases" : 3,
  "_shards" : {
    "total" : 1105,
    "successful" : 1105,
    "skipped" : 75,
    "failed" : 0
  },
  "hits" : {
    "total" : 2826,
    "max_score" : 0.0,
    "hits" : [ ]
  },
  "aggregations" : {
    "IP" : {
      "doc_count_error_upper_bound" : 0,
      "sum_other_doc_count" : 0,
      "buckets" : [
        {
          "key" : "10.25.90.139",
          "doc_count" : 61
        },
        {
          "key" : "10.25.78.146",
          "doc_count" : 45
        },
        {
          "key" : "10.25.94.22",
          "doc_count" : 21
        },
        {
          "key" : "10.25.75.52",
          "doc_count" : 18
        },
        {
          "key" : "10.25.89.32",
          "doc_count" : 13
        },
        {
          "key" : "10.25.93.243",
          "doc_count" : 10
        },
        {
          "key" : "10.25.78.189",
          "doc_count" : 9
        },
        {
          "key" : "10.25.90.82",
          "doc_count" : 8
        },
        {
          "key" : "10.25.91.240",
          "doc_count" : 8
        },
        {
          "key" : "10.25.90.57",
          "doc_count" : 7
        },
        {
          "key" : "10.25.91.251",
          "doc_count" : 7
        },
        {
          "key" : "10.25.95.166",
          "doc_count" : 6
        },
        {
          "key" : "10.25.89.33",
          "doc_count" : 5
        },
        {
          "key" : "10.25.90.88",
          "doc_count" : 5
        },
        {
          "key" : "10.25.92.53",
          "doc_count" : 5
        }
      ]
    }
  }
}

每个IP登录人数超过2的IP

这个是对登录记录用户ID的去重数聚合,然后过滤。对用户ID进行去重可以使用Cardinality Aggregation聚合,然后再使用Bucket Selector Aggregation聚合过滤器过滤数据。具体内容如下: 查询语句

{
  "aggs": {
    "IP": {
      "terms": {
        "field": "IP",
        "size": 3000,
        "order": {
          "distinct": "desc"
        },
        "min_doc_count": 5
      },
      "aggs": {
        "distinct": {
          "cardinality": {
            "field": "IP.keyword"
          }
        },
        "dd":{
          "bucket_selector": {
            "buckets_path": {"userCount":"distinct"},
            "script": "params.userCount > 2"
          }
        }
      }
    }
  },
  "size": 0
}

结果

{
  "took" : 317,
  "timed_out" : false,
  "num_reduce_phases" : 3,
  "_shards" : {
    "total" : 1105,
    "successful" : 1105,
    "skipped" : 75,
    "failed" : 0
  },
  "hits" : {
    "total" : 2826,
    "max_score" : 0.0,
    "hits" : [ ]
  },
  "aggregations" : {
    "IP" : {
      "doc_count_error_upper_bound" : 0,
      "sum_other_doc_count" : 0,
      "buckets" : [
        {
          "key" : "10.25.75.52",
          "doc_count" : 18,
          "distinct" : {
            "value" : 4
          }
        },
        {
          "key" : "10.25.78.146",
          "doc_count" : 45,
          "distinct" : {
            "value" : 3
          }
        },
        {
          "key" : "10.25.90.139",
          "doc_count" : 61,
          "distinct" : {
            "value" : 3
          }
        },
        {
          "key" : "10.25.91.240",
          "doc_count" : 8,
          "distinct" : {
            "value" : 3
          }
        },
        {
          "key" : "10.25.94.22",
          "doc_count" : 21,
          "distinct" : {
            "value" : 3
          }
        }
      ]
    }
  }
}

桶聚合选择器: https://www.elastic.co/guide/en/elasticsearch/reference/6.8/search-aggregations-pipeline-bucket-selector-aggregation.html

收起阅读 »

社区日报 第746期 (2019-10-09)

1.通过某瓣真实案例看Elasticsearch优化
http://tinyurl.com/y6l7qm6d
2.使用 Elastic Beats 搜集日志到 Pulsa
http://tinyurl.com/y2vm89vu
3.Filebeat的Registry文件越来越大?
http://tinyurl.com/y37pst27

编辑:金桥

Elastic中文社区民意调查,期待您的参与!
http://tinyurl.com/y35mtwes
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1.通过某瓣真实案例看Elasticsearch优化
http://tinyurl.com/y6l7qm6d
2.使用 Elastic Beats 搜集日志到 Pulsa
http://tinyurl.com/y2vm89vu
3.Filebeat的Registry文件越来越大?
http://tinyurl.com/y37pst27

编辑:金桥

Elastic中文社区民意调查,期待您的参与!
http://tinyurl.com/y35mtwes
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

社区日报 第745期 (2019-10-08)

1、使用CloudWatch metricset管理AWS服务。
http://tinyurl.com/y527yjdm
2、在Elastic SIEM中集成地图。
http://tinyurl.com/y5zluwz9
3、利用Open Distro中的Performance Analyzer和PerfTop进行轻量级调试。
http://tinyurl.com/yxpuo2nt
 
Elastic中文社区民意调查,期待您的参与!
https://www.wjx.cn/m/46684393. ... d%3D0

编辑:叮咚光军

归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1、使用CloudWatch metricset管理AWS服务。
http://tinyurl.com/y527yjdm
2、在Elastic SIEM中集成地图。
http://tinyurl.com/y5zluwz9
3、利用Open Distro中的Performance Analyzer和PerfTop进行轻量级调试。
http://tinyurl.com/yxpuo2nt
 
Elastic中文社区民意调查,期待您的参与!
https://www.wjx.cn/m/46684393. ... d%3D0

编辑:叮咚光军

归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

社区日报 第744期 (2019-09-30)

1.基于spark集群的券商个性化推荐系统架构设计最佳实践;
http://1t.click/a2mv
2.图辅助的搜索;
http://1t.click/a2mw
3.k8s nginx ingress日志收集;
http://1t.click/a2mx

PS:举国欢庆,大家快乐;国庆后见~~
编辑:wt
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
继续阅读 »
1.基于spark集群的券商个性化推荐系统架构设计最佳实践;
http://1t.click/a2mv
2.图辅助的搜索;
http://1t.click/a2mw
3.k8s nginx ingress日志收集;
http://1t.click/a2mx

PS:举国欢庆,大家快乐;国庆后见~~
编辑:wt
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub 收起阅读 »

社区日报 第743期 (2019-09-29)

1.Logstash教程:快速入门指南。
https://tinyurl.com/y6gb3sen
2.X-Pack替代方案比较。
https://tinyurl.com/y8andhyf
3.(自备梯子)非洲正在建立一个不像硅谷的人工智能行业。
https://tinyurl.com/yxfwsk7v

线上活动:
1.10月16日,ELK初学者入门
http://1t.click/aywj
2.10月30日,Elastic SIEM实操网络研讨会
http://1t.click/ayxu

Elastic Meetingup:
1.10月25日,Elastic教育行业分享会
http://1t.click/aywm

编辑:至尊宝
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1.Logstash教程:快速入门指南。
https://tinyurl.com/y6gb3sen
2.X-Pack替代方案比较。
https://tinyurl.com/y8andhyf
3.(自备梯子)非洲正在建立一个不像硅谷的人工智能行业。
https://tinyurl.com/yxfwsk7v

线上活动:
1.10月16日,ELK初学者入门
http://1t.click/aywj
2.10月30日,Elastic SIEM实操网络研讨会
http://1t.click/ayxu

Elastic Meetingup:
1.10月25日,Elastic教育行业分享会
http://1t.click/aywm

编辑:至尊宝
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

社区日报 第742期 (2019-09-28)

1.ES写报错的解决方法 http://t.cn/Ain8Bv55 2.腾讯对ES进行写优化的步骤 http://t.cn/Ain8Bv5V 3.Elasticsearch X-Pack 系列之 Machine Learning 解析 http://t.cn/Ain8Bv5b

继续阅读 »

1.ES写报错的解决方法 http://t.cn/Ain8Bv55 2.腾讯对ES进行写优化的步骤 http://t.cn/Ain8Bv5V 3.Elasticsearch X-Pack 系列之 Machine Learning 解析 http://t.cn/Ain8Bv5b

收起阅读 »

社区日报 第741期 (2019-09-27)


1、开源:Elasticsearch Site&App Search PHP 客户端1.0发布
https://tinyurl.com/yxw9zoku
2、Elasticsearch实时数据监控实战
https://tinyurl.com/y2s2gk7q
3、视频:Elasticsearch集群性能的5个基础认知
https://tinyurl.com/y48vcr9a

编辑:铭毅天下
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 
继续阅读 »

1、开源:Elasticsearch Site&App Search PHP 客户端1.0发布
https://tinyurl.com/yxw9zoku
2、Elasticsearch实时数据监控实战
https://tinyurl.com/y2s2gk7q
3、视频:Elasticsearch集群性能的5个基础认知
https://tinyurl.com/y48vcr9a

编辑:铭毅天下
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup  收起阅读 »

社区日报 第740期 (2019-09-26)

1、如何基于 Kibana 进行数据探索和机器学习实践
http://tinyurl.com/y2j3vthx
2、Kibana analyze api ui 升级到最新 7.3 版本
http://tinyurl.com/y3s64klj
3、Elastic Cloud On Kubernetes 介绍
http://tinyurl.com/y2sx2f4z

编辑:rockybean
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1、如何基于 Kibana 进行数据探索和机器学习实践
http://tinyurl.com/y2j3vthx
2、Kibana analyze api ui 升级到最新 7.3 版本
http://tinyurl.com/y3s64klj
3、Elastic Cloud On Kubernetes 介绍
http://tinyurl.com/y2sx2f4z

编辑:rockybean
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

社区日报 第739期 (2019-09-25)

1、基于 ElasticStack 实现 Mulesoft 的可观察性
https://tinyurl.com/yy7xwe3c
2、Elasticsearch 7.3 新功能 DataFrame 实战演练
https://tinyurl.com/yxqgxsdz
3、Elastic 在金融领域的发展和应用趋势探讨
https://tinyurl.com/y5fufsy7


编辑:rockybean
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1、基于 ElasticStack 实现 Mulesoft 的可观察性
https://tinyurl.com/yy7xwe3c
2、Elasticsearch 7.3 新功能 DataFrame 实战演练
https://tinyurl.com/yxqgxsdz
3、Elastic 在金融领域的发展和应用趋势探讨
https://tinyurl.com/y5fufsy7


编辑:rockybean
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »