
本文通过 AI Agent 技术实现数据库异常的自动发现、智能分析和快速修复,将故障处理时间从数小时缩短到分钟级,异常误报率降低 60-80%。

背景:三大核心痛点
随着业务规模快速增长,OPPO的数据库规模已达到数十万实例、千万级库表,涵盖MySQL、PostgreSQL、MongoDB、ClickHouse、Redis、Milvus等多种数据库类型。常见故障点:

图1:数据库常见故障点
分析发现:
80%的故障时间花在问题分析与根因定位
平均故障处理时长195分钟,70%为性能调优问题
传统的人工诊断模式面临三大核心痛点:


AI智能诊断:三大核心优势
基于AI Agent构建的智能诊断系统,相比传统诊断具有三大核心优势
2.1 多模态融合诊断
传统方式:孤立指标检查 + 人工经验关联
AI方式:同时处理数百个指标,自动发现隐式关联,融合5种数据模态:
指标时序数据(Prometheus/Grafana)
文本日志(错误日志、慢查询日志)
配置信息(my.cnf等)
SQL文本(查询语句、执行计划)
拓扑结构(主从关系、分片信息)
案例:
数据库突然变慢:
指标:QPS下降50%
日志:大量"Lock wait timeout"错误
SQL:UPDATE执行时间从10ms增加到5s
配置:innodb_lock_wait_timeout设置为50s(过长)
拓扑:UPDATE在从库执行(错误)
AI判断:应用错误路由到从库 → 从库只读阻塞 → 连接池耗尽 → QPS下降
价值:排查时间从数小时缩短到分钟级
2.2 动态自适应诊断
传统方式:阈值固定,无法区分“正常的高负载”与“异常的高负载”
AI方式:
自动识别业务流量变化:工作日 vs 周末、业务高峰期 vs 低峰期
异常评分:使用综合评分规则给出异常程度
迁移学习:将A库的诊断经验迁移到B库(同架构、不同业务)
案例:
传统:CPU 85% → 告警(可能是正常业务高峰)
AI: CPU 85% + 查询模式异常 + 连接数突增 + 历史同期对比→ 综合评分0.92(高度异常)→ 告警
价值:异常误报率降低60-80%
2.3 预测性诊断
传统流程:问题发生 → 用户投诉 → DBA介入 → 分析 → 解决(已造成影响)
AI能力:
时序预测:预测未来1-24小时性能趋势
故障预测:磁盘空间、容量预警
性能退化预警:提前发现索引效率下降
案例:
AI模型输入:
- 磁盘空间增长率(指数增长趋势)
- 表大小增长率
- 历史清理周期
AI输出:
"预计3天后磁盘将满,建议立即执行归档操作"
价值:从"救火"到"防火",故障从"已发生"提前到"即将发生"

技术架构:ODC+知识库+AI Agent
3.1 整体架构
多数据库类型:OLTP、文档型、分析型、键值型、AI新业态型数据库
多模数据管理平台:OneMeta:各数据库类型在系统变成“可理解、可治理、可查询”统一数据资产;OneOps:提供DBaaS(数据库即服务)的体验,所有运维相关操作的控制平台
AI驱动:构建数据库知识库,融合专家经验+AI Agent
AI应用:多种场景如开发提效、智能诊断、智能运维自治

图2:AI智能诊断系统整体架构
多模数据管理平台ODC(Open Database Develop Center)已经完成并投入使用,不做过多说明。本文主要介绍智能诊断模块的实现,开发提效和智能运维模块后续再做详细介绍。
3.2 智能诊断核心组件
OneMetrics:统一监控指标输入与异常监测
运行日志:慢日志、错误日志、审计日志
性能指标:CPU、内存、IO、连接数等
操作日志:扩缩容、主从切换、参数修改
诊断自治服务:专家经验 + AI Agent
异常识别:自动识别CPU飙高、慢日志激增等
异常分析:AAS分析 + AI Agent智能诊断
异常定位:基于RAG的检索增强生成

图3:诊断自治服务流程图

核心技术:专家经验+RAG增强型AI
4.1 诊断演进路径

4.2 诊断流程:识别→分析→定位

图4:智能诊断方案
4.2.1 异常识别
依赖数据采集时的监测,自动识别异常场景:
CPU飙高
内存异常
慢日志激增
错误日志
主从切换
整库整表删除
其他异常场景
4.2.2 异常分析
专家经验部分:
以AAS(平均活跃会话数)作为切入点:
AAS数量变化趋势反映数据库实例负载变化
优先处理AAS数量较多的会话状态
快速初步定位根因
AI Agent部分:
将以下信息作为输入,以Prompt形式发送给AI Agent:
异常信息
审计日志
慢日志
错误日志
AAS数据
操作日志
监控指标
特殊指标
AI Agent进行预设的分析流程进行智能诊断分析,输出诊断结果。
4.2.3 异常定位
技术方案:基于RAG(Retrieval-Augmented Generation,检索增强生成)

图5:基于RAG的异常定位技术架构
RAG的优势:
✅ 结合通用知识库和人工标注结果
✅ 融入企业私有业务知识
✅ 显著提升准确性,减少AI幻觉
✅ 调用OneMeta API,增强诊断准确性
反馈闭环:
用户对诊断结果评价后:
将Prompt和用户标注结果输入嵌入式模型
更新知识库
持续优化诊断效果
4.3 结果评估:双重保障
AI评估
使用AI小模型对DB Agent输出进行评估:

人工评估
用户评估:对诊断结果准确性和采纳与否进行评估
专家评估:专家对结果的准确性、相关性、安全性再次评估
知识库更新:剔除badcase,存入优质案例,持续优化
重要性:虽然评估成本较大,但这是提高DB Agent准确率的"良方",尤其在数据库这种基础高风险组件中尤为重要。

实战案例:CPU飙高诊断
5.1 异常监测
进入性能诊断界面,发现CPU使用率在21:03:00-21:13:00突然飙高至85%,触发智能诊断。

图6:CPU使用率异常监测界面
5.2 根因分析与定位
通过AAS(平均活跃会话数)分析发现:
数据库Sending_data负载最大
AAS数量变化趋势与CPU飙高时间段完全吻合
业务Send数据量和MySQL的TPS增多,相互佐证

图7:AAS分析图
推断:CPU飙高由数据库查询时Sending_data数据过多引起。通过SQL关联分析,定位到导致CPU飙高的SQL指纹。
5.3 优化建议
AI提供索引建议和SQL改写建议,一键跳转ODC数据变更界面。

图8:SQL优化建议界面

核心价值与展望
1. 核心成果
异常发现及时性:从被动响应到主动预测
根因诊断高效性:从数小时缩短到分钟级
异常告警准确性:异常误报降低60-80%
2. 技术亮点
多模态融合:融合指标、日志、配置、SQL、拓扑等多源数据
RAG增强生成:结合知识库和专家经验,提升诊断准确性
双轨制保障:专家经验+AI,保证稳定性
反馈闭环:用户和专家评估,持续优化
3. 未来方向
持续优化AI模型,提升诊断准确率
扩展更多数据库类型支持
增强预测性诊断能力
完善自动化修复能力

总结
数据库智能诊断实现了资源监控与SQL智能关联,精准锁定异常根因,提供优化方案,形成异常发现-诊断-修复闭环。
AI的诊断结果并非完全准确,部分重要场景仍需要人为干预和引导。DB Agent的建设是一条持续且漫长的道路,需要我们不断优化与改进。
1035

被折叠的 条评论
为什么被折叠?



