百科问答小站 logo
百科问答小站 font logo



运维监控的KPI异常检测 业界有哪些实用方法? 第1页

  

user avatar   chenlinux 网友的相关建议: 
      

做运维监控的异常检测,主要看几个吧。

第一个是skyline项目,最早是2013年由etsy开源的。总体思路是通过各种统计方法来判定avg(last(3))是否异常,然后多数投票。etsy后来内部的v2版没继续开源(但是有分享PPT,加了分解,用了KStest等),但是社区有其他人接手了,一直在维护,添加了诸如通过tsfresh提取特征做标注过滤等等实用功能,包括调整算法次序等各种细微的性能优化点,应该算是这个领域最接近开箱即用的监控体系。见:earthgecko-skyline.readthedocs.io

第二个是numenta的HTM项目,这东西思路比较奇特,说实话搞不太懂。但是他们公司自己说已经在大规模IT环境上用着了。官方提供了一个HTM studio的桌面端,可以很方便试用。另一个不能不提的,就是他们另外有一个项目,叫NAB,利用一些公开数据集,对比各种开源的异常检测算法在公开数据集上的表现(上面说的earthgeocko-skyline也参加了这个对比)。见:github.com/numenta/NAB 项目wiki里也对几个开源项目做了点评,尤其是像yahoo的EGADS等比较有名的,建议阅读。NAB的评分设计我觉得也蛮有趣的。它的思想是,异常是一整个窗口的事情,你只要能在窗口的较前位置发现就好,越晚,评分越低。

第三个,就是裴丹教授这五年来陆续发表的系列论文了。最开始是和百度合作的Opprentice,我觉得有点像是skyline的高级版。它也是通过多种统计方法来判定异常,但是这里统计方法的参数均分采样,一下子就变成上百个特征了,然后顺势用RandomForest做个投票。缺点就是有监督,没个专职人工肯定用不起来。Opprentice未开源,但是腾讯去年开源的Metis,在issue里说了主要是借鉴Opprentice思路。不过metis开源阉割太多,见:Tencent/Metis 。接着是和阿里合作的Donut,采用的VAE算法,从有监督走向无监督,上手难度低了下来。Donut是开源的,但只是一个库,还是要自己封装一下,见:github.com/haowen-xu/do ,只是donut主要也就对网站访问量这种指标比较有效。接着是ADS,这个是在原先ROCKA+Opprentice的基础上,改用CPLE半监督学习。好像目前没看到直接的开源。不过ROCKA做指标聚类这事儿,又是另开一摊子,本身也是无数坑待填。裴教授也开了一个类似NAB的算法比赛,不过规则和NAB不一样,他的规则是只认异常开始那一刻往后7个采样点内检测出来的。坦白说,我个人觉得NAB的规则更好一些。

第四个,是Expedia公司开源的adaptive-alerting项目,整个项目也是完整一套监控体系,包括事件处理恢复操作都在内。系统设计主要在如何方便集成不同的异常检测算法和评估方法,然后根据指标的情况来路由和触发重训练等等。目前已经集成的算法倒是比较基础,所以多学习他们wiki文档就行:github.com/ExpediaDotCo




  

相关话题

  目前工业界常用的推荐系统模型有哪些? 
  为什么神经网络具有泛化能力? 
  让人工智能去下路边街头的象棋残局会赢吗? 
  计量经济学是不是过时了? 
  反馈控制理论在通信、信号处理等领域有哪些应用? 
  使用强化学习解决实际问题时常常避不开环境模拟或者使用离线强化学习算法,两者分别有什么优缺点? 
  计算机视觉(cv)方向今年招聘情况怎么样?是否已经人才过剩? 
  如何评价周志华在微博对 AlphaGo 和机器学习技术的评论? 
  谷歌翻译原理是什么,从语言A到B,中间是否要翻译成中介语言C(如英语)? 
  神经网络中的能量函数是如何定义的? 

前一个讨论
如何看待ITSM领域理想与现实的差距?
下一个讨论
监控系统方面运维工作怎么样?做二休二有夜班倒班制,有大神给点建议吗?





© 2024-11-22 - tinynew.org. All Rights Reserved.
© 2024-11-22 - tinynew.org. 保留所有权利