带你读《Elastic Stack 实战手册》之59:——3.5.16.3.Anomaly detection(1)

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 带你读《Elastic Stack 实战手册》之59:——3.5.16.3.Anomaly detection(1)

3.5.16.3.Anomaly detection


创作人:张妙成

审稿人:胡征南

 

Elasticsearch 的 Anomaly detection 模块主要用于时序数据的异常检测、群体分析,根据既定模型,创建正常行为的标准基线来识别数据中的异常,通常是从 Elasticsearch 中提取数据进行分析,将异常结果展示在可视化的 Kibana 仪表盘中,用以解决一些基于规则或监控难以实时发现的问题。主要用途为分析过去和现在、预测未来。

 

一、基本概念简述

 

1. Jobs

 

Job 即一个异常检测作业,包含执行分析任务所需的配置信息和元数据,job 通过一个或多个 detector,将分析函数应用于数据中的指定字段,达到按照字段分析数据集的效果。

 

2.Datafeeds

 

Datafeed 可以理解成一种 pipline,例如,Datafeed 可以作为 Job 从 Elasticsearch 中选取数据集的规则,Datafeed 还可以在将数据发送到异常检测作业之前聚合数据有一定限制

 

3.Buckets(桶)

 

Bucket 是 Elasticsearch 中的一个集合概念,例如聚合结果最终表现形式是 bucket 集合,在机器学习中,则使用 bucket 的概念将时序数据分成批次进行处理。指定时间窗口的数据集合即为一个 bucket,bucket 的大小即每个时间窗口的数据量的大小, 也就是每次给 ML job 输送的数据量的大小。

4. Influencers

 

Influencer 即为影响因素,是可能促成数据异常的信息的字段,Influencer 可以是数据中的任何字段。

 

5. Calendars and scheduled events

 

在日历中指定日期或时间段为预期事件,机器学习 Job 不会在该期间内产生异常。主要用于持续时间较短且很少发生的场景,定期发生的事件无需创建计划事件,机器学习会自动识别处理。

 

6.Custom rules

 

Custom rule 即自定义规则,主要用于控制与调整机器学习检测器的分析结果,例如只关心

CPU 大于70%的异常,则在无监督学习的异常检测分析中,CPU 在70%以下的异常中不会生产异常结果。自定义规则还可应用于白名单的设置,例如信任的 IP 等场景。

 

7.Model snapshots

 

Model snapshot 即模型快照,主要用于存储机器学习的数据模型。异常检测是通过正常的行为的基线来推断的,该基线是由数据模型完成的,为了保证高可用,每个 job 的数据模型快照都保存到 ES 机器的内部索引,默认每 3-4h 生成一次快照。


二、工作原理

 

外部时序数据或者存储在 ES 索引中的时序数据,在经过 ES 机器学习 job 分析之后可以获取异常信息、预测后续数据,最终在 Kibana 展示,如果不依赖 Kibana,也可以通过 API 查看分析结果,结果存储在 ES 索引(.ml-anomalies)中。

 

image.png


机器学习 job 获取数据之后进行无监督学习,生成数据模型,并存入 ES 的 .ml-state 索引中。默认 3~4h 会生成一个 model snapshot,存入该索引。机器学习 job 通过学习出的模型对数据进行分析,并将分析结果存入 ES 的 .ml-anomalies 索引中。ml 相关数据的存储如下图所示。其中 job 信息时存在 .ml-config 索引中,calendar 等信息存储在 .ml-meta 索引中。


image.png


《Elastic Stack 实战手册》——三、产品能力——3.5 进阶篇——3.5.16. Machine learning ——3.5.16.3.Anomaly detection(2) https://developer.aliyun.com/article/1227224

 


相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
12月前
|
机器学习/深度学习 存储 JSON
带你读《Elastic Stack 实战手册》之59:——3.5.16.3.Anomaly detection(5)
带你读《Elastic Stack 实战手册》之59:——3.5.16.3.Anomaly detection(5)
|
12月前
|
机器学习/深度学习 运维 安全
带你读《Elastic Stack 实战手册》之59:——3.5.16.3.Anomaly detection(2)
带你读《Elastic Stack 实战手册》之59:——3.5.16.3.Anomaly detection(2)
|
12月前
|
机器学习/深度学习 运维 API
带你读《Elastic Stack 实战手册》之59:——3.5.16.3.Anomaly detection(3)
带你读《Elastic Stack 实战手册》之59:——3.5.16.3.Anomaly detection(3)
|
12月前
|
机器学习/深度学习 运维 数据可视化
带你读《Elastic Stack 实战手册》之59:——3.5.16.3.Anomaly detection(4)
带你读《Elastic Stack 实战手册》之59:——3.5.16.3.Anomaly detection(4)
110 0
|
12月前
|
存储 资源调度 NoSQL
带你读《Elastic Stack 实战手册》之45:——3.5.4.Graph (上)
带你读《Elastic Stack 实战手册》之45:——3.5.4.Graph (上)
121 0
|
12月前
|
数据可视化 NoSQL API
带你读《Elastic Stack 实战手册》之45:——3.5.4.Graph (下)
带你读《Elastic Stack 实战手册》之45:——3.5.4.Graph (下)
133 0
|
12月前
带你读《Elastic Stack 实战手册》之40:——3.4.2.21.Aggregations(11)
带你读《Elastic Stack 实战手册》之40:——3.4.2.21.Aggregations(11)
|
12月前
|
存储 索引
带你读《Elastic Stack 实战手册》之40:——3.4.2.21.Aggregations(9)
带你读《Elastic Stack 实战手册》之40:——3.4.2.21.Aggregations(9)
|
12月前
|
资源调度
带你读《Elastic Stack 实战手册》之40:——3.4.2.21.Aggregations(7)
带你读《Elastic Stack 实战手册》之40:——3.4.2.21.Aggregations(7)
|
12月前
|
存储
带你读《Elastic Stack 实战手册》之40:——3.4.2.21.Aggregations(5)
带你读《Elastic Stack 实战手册》之40:——3.4.2.21.Aggregations(5)