SLS机器学习最佳实战:根因分析(一)

本文涉及的产品
对象存储 OSS,20GB 3个月
阿里云盘企业版 CDE,企业版用户数5人 500GB空间
云备份 Cloud Backup,100GB 3个月
简介: 通过算法,快速定位到某个宏观异常在微观粒度的具体表现形式,能够更好的帮助运营同学和运维同学分析大量异常,降低问题定位的时间。

为何需要根因分析?

当某个宏观的监控指标发生异常时,如果能快速定位到具体是那个细粒度的指标发生了异常而导致的。具体来说,当某个流量发生了异常,具体如图中所示:
1

这个指标就对应是某个小时级别的流量情况,我们要快速定位到2018-09-02 20:00:00 具体发生了什么问题而导致流量突增的?

如何在平台中分析?

  • 原始数据格式

2

在给定的LogStore中一共存在14天的各个粒度的流量数据,其中涉及的维度为 leaf=(dim1, dim2, dim3, dim4, dim5),在每个时刻,一个leaf节点有一个对应的流量值value,在相同时刻,流量对应有可加性。

  • 异常区间分析

3

我们在图中,绘制某个异常的区间,算法就会去分析从数据:[起始时刻,异常区间的右边界],遍历所有可能,找到导致该异常的集合。
4

在上图中,红色框部分,展示的所找到的候选集合中各个子元素对应的时序图,其中ds表示当前根因集合对应的整体趋势信息,其它为根因集合中对应的各个元素的时序曲线。对图中各个含义进行说明:
5

  • 具体的调用形式(仅仅事例,展示调用形式)
* not Status:200 | 
select rca_kpi_search(
 array[ ProjectName, LogStore, UserAgent, Method ],
 array[ 'ProjectName', 'LogStore', 'UserAgent', 'Method' ], real, forecast, 1) 
from ( 
select ProjectName, LogStore, UserAgent, Method,
 sum(case when time < 1552436040 then real else 0 end) * 1.0 / sum(case when time < 1552436040 
then 1 else 0 end) as forecast,
 sum(case when time >=1552436040 then real else 0 end) *1.0 / sum(case when time >= 1552436040 
then 1 else 0 end) as real
 from ( 
select __time__ - __time__ % 60 as time, ProjectName, LogStore, UserAgent, Method, COUNT(*) as real 
from log GROUP by time, ProjectName, LogStore, UserAgent, Method ) 
GROUP BY ProjectName, LogStore, UserAgent, Method limit 100000000)
AI 代码解读

使用流程

root_cause.gif


硬广时间

日志进阶

阿里云日志服务针对日志提供了完整的解决方案,以下相关功能是日志进阶的必备良药:

  1. 机器学习语法与函数: https://help.aliyun.com/document_detail/93024.html
  2. 日志上下文查询:https://help.aliyun.com/document_detail/48148.html
  3. 快速查询:https://help.aliyun.com/document_detail/88985.html
  4. 实时分析:https://help.aliyun.com/document_detail/53608.html
  5. 快速分析:https://help.aliyun.com/document_detail/66275.html
  6. 基于日志设置告警:https://help.aliyun.com/document_detail/48162.html
  7. 配置大盘:https://help.aliyun.com/document_detail/69313.html

更多日志进阶内容可以参考:日志服务学习路径


联系我们

纠错或者帮助文档以及最佳实践贡献,请联系:悟冥
问题咨询请加钉钉群:

f5d48178a8f00ad1b8e3fffc73fb9158b3f8fe10_jpeg

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
打赏
0
0
0
0
3068
分享
相关文章
SelectDB 实现日志高效存储与实时分析,完成任务可领取积分、餐具套装/水杯/帆布包!
SelectDB 实现日志高效存储与实时分析,完成任务可领取积分、餐具套装/水杯/帆布包!
SLS 重磅升级:超大规模数据实现完全精确分析
SLS 全新推出的「SQL 完全精确」模式,通过“限”与“换”的策略切换,在快速分析与精确计算之间实现平衡,满足用户对于超大数据规模分析结果精确的刚性需求。标志着其在超大规模日志数据分析领域再次迈出了重要的一步。
294 117
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
基于阿里云SelectDB,MiniMax构建了覆盖国内及海外业务的日志可观测中台,总体数据规模超过数PB,日均新增日志写入量达数百TB。系统在P95分位查询场景下的响应时间小于3秒,峰值时刻实现了超过10GB/s的读写吞吐。通过存算分离、高压缩比算法和单副本热缓存等技术手段,MiniMax在优化性能的同时显著降低了建设成本,计算资源用量降低40%,热数据存储用量降低50%,为未来业务的高速发展和技术演进奠定了坚实基础。
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
Python 高级编程与实战:深入理解数据科学与机器学习
本文深入探讨了Python在数据科学与机器学习中的应用,介绍了pandas、numpy、matplotlib等数据科学工具,以及scikit-learn、tensorflow、keras等机器学习库。通过实战项目,如数据可视化和鸢尾花数据集分类,帮助读者掌握这些技术。最后提供了进一步学习资源,助力提升Python编程技能。
Java机器学习实战:基于DJL框架的手写数字识别全解析
在人工智能蓬勃发展的今天,Python凭借丰富的生态库(如TensorFlow、PyTorch)成为AI开发的首选语言。但Java作为企业级应用的基石,其在生产环境部署、性能优化和工程化方面的优势不容忽视。DJL(Deep Java Library)的出现完美填补了Java在深度学习领域的空白,它提供了一套统一的API,允许开发者无缝对接主流深度学习框架,将AI模型高效部署到Java生态中。本文将通过手写数字识别的完整流程,深入解析DJL框架的核心机制与应用实践。
97 3
Python 高级编程与实战:深入理解数据科学与机器学习
在前几篇文章中,我们探讨了 Python 的基础语法、面向对象编程、函数式编程、元编程、性能优化和调试技巧。本文将深入探讨 Python 在数据科学和机器学习中的应用,并通过实战项目帮助你掌握这些技术。
让跨 project 联查更轻松,SLS StoreView 查询和分析实践
让跨 project 联查更轻松,SLS StoreView 查询和分析实践
R1类模型推理能力评测手把手实战
R1类模型推理能力评测手把手实战
基于阿里云 Milvus + DeepSeek + PAI LangStudio 的低成本高精度 RAG 实战
阿里云向量检索服务Milvus版是一款全托管向量检索引擎,并确保与开源Milvus的完全兼容性,支持无缝迁移。它在开源版本的基础上增强了可扩展性,能提供大规模AI向量数据的相似性检索服务。凭借其开箱即用的特性、灵活的扩展能力和全链路监控告警,Milvus云服务成为多样化AI应用场景的理想选择,包括多模态搜索、检索增强生成(RAG)、搜索推荐、内容风险识别等。您还可以利用开源的Attu工具进行可视化操作,进一步促进应用的快速开发和部署。

云存储

+关注

相关产品

  • 日志服务
  • AI助理

    你好,我是AI助理

    可以解答问题、推荐解决方案等