排行
数据库百科
核心案例
行业报告
月度解读
大事记
产业图谱
中国数据库
向量数据库
时序数据库
实时数据库
搜索引擎
空间数据库
图数据库
数据仓库
大调查
2021年报告
2022年报告
年度数据库
2020年openGauss
2021年TiDB
2022年PolarDB
2023年OceanBase
首页
资讯
活动
大会
学习
课程中心
推荐优质内容、热门课程
学习路径
预设学习计划、达成学习目标
知识图谱
综合了解技术体系知识点
课程库
快速筛选、搜索相关课程
视频学习
专业视频分享技术知识
电子文档
快速搜索阅览技术文档
文档
问答
服务
智能助手小墨
关于数据库相关的问题,您都可以问我
数据库巡检平台
脚本采集百余项,在线智能分析总结
SQLRUN
在线数据库即时SQL运行平台
数据库实训平台
实操环境、开箱即用、一键连接
数据库管理服务
汇聚顶级数据库专家,具备多数据库运维能力
数据库百科
核心案例
行业报告
月度解读
大事记
产业图谱
我的订单
登录后可立即获得以下权益
免费培训课程
收藏优质文章
疑难问题解答
下载专业文档
签到免费抽奖
提升成长等级
立即登录
登录
注册
登录
注册
首页
资讯
活动
大会
课程
文档
排行
问答
我的订单
首页
专家团队
智能助手
在线工具
SQLRUN
在线数据库即时SQL运行平台
数据库在线实训平台
实操环境、开箱即用、一键连接
AWR分析
上传AWR报告,查看分析结果
SQL格式化
快速格式化绝大多数SQL语句
SQL审核
审核编写规范,提升执行效率
PLSQL解密
解密超4000字符的PL/SQL语句
OraC函数
查询Oracle C 函数的详细描述
智能助手小墨
关于数据库相关的问题,您都可以问我
精选案例
新闻资讯
云市场
登录后可立即获得以下权益
免费培训课程
收藏优质文章
疑难问题解答
下载专业文档
签到免费抽奖
提升成长等级
立即登录
登录
注册
登录
注册
首页
专家团队
智能助手
精选案例
新闻资讯
云市场
微信扫码
复制链接
新浪微博
分享数说
采集到收藏夹
分享到数说
首页
/
国产数据库的AIOPS困境
国产数据库的AIOPS困境
白鳝的洞穴
2025-05-06
202
Oracle的自治数据库技术很强大,也有不少国产数据库想跟进。最近这段时间里我和很多国产数据库厂商都探讨过如何学习Oracle的自治数据库技术,利用AI技术让国产数据库的运维与优化变得更加简单。因为最近我和DBAIOPS社区一起在利用大模型做智能化分析方面做了一些探索,在Oracle数据库上取得了不错的效果。因此刚开始的时候,我觉得利用在Oracle上做智能运维的方法论复制到国产数据库上应该不是特别难的事情。
不过经过这段时间的探索,我越来越觉得难度很大。目前的数据库智能诊断与分析依旧是对人类专家的一种模仿,而并没有创造出新的方法,可以绕过数据库的基础原理与专家经验去实现强大的AI运维。既然是模仿人类专家的工作方法和思维方式,通过大模型的数据分析、数据处理和推理能力去做AI分析,那么其天花板就是人类专家的能力极限。有人说既然AI分析无法突破人类专家的极限,那么还有什么意义呢?实际上有没有意义并非这么简单的,首先是AI推理的效率要远远高于人类专家,人类专家可能需要通过数个小时去分析和推理的工作,AI可能只需要数分钟。另外一点是AI推理是可以固化到系统中去复制的,而人类专家是无法复制的。
虽然AI推理的价值很大,但是面对国产数据库的时候,依然面临巨大的挑战。首先是可观测性的问题,这方面PG系的国产数据库稍微好一点,PG的客观性能力虽然与O记相比,还有很大差距,不过基础的数据大多数还是有的,再加上以PG为内核研发的国产数据库在PG的系统视图上又模仿Oracle做了一些增强。因此目前看来PG系的国产数据库的可观测性还是最为丰富的。MySQL本身的可观测性能力就比较弱,不过因为MySQL足够简单,也凑合用了。反而是一些自研比例比较高的国产数据库产品的可观测性能力挺令人崩溃的。
虽然各大国产数据库都推出了类似Oracle AWR/ASH报告的诊断报告,号称可以像Oracle一样给DBA提供最直接的帮助。但是我目前看到的国产数据库的AWR报告,没有一个真正能像Oracle一样,让人能够从中分析出数据库存在的各种问题。有朋友说,这是因为国产数据库没有类似Oracle的MOS,其实这只说出了一个方面。除了缺乏Mos这样的知识库之外,国产数据库指标体系的不完善,是一个更大的问题。从国产数据库的AWR报告中,我们唯一能够看到的类似Oracle的数据就是TOP SQL,除了TOP SQL之外,其他的数据的价值差距太大。
对于这个问题,以前没有做AI诊断的时候还没有特别关注,因为我们对这些数据库产品的使用和研究也比较粗浅,看到某些数据库中的指标数量也不少,就以为可能也够用了。当我们要把问题交给AI去分析的时候,我们必须给AI输入足够丰富的数据,以便于实现自动化诊断。这个时候我们就会发现,分析某些问题所需要的指标缺失得比较多。比如我们如果想要在某个数据库中分析是否存在较多的全表扫描问题的时候,在Oracle和PG数据库中我们可以根据每秒表扫描/每秒大表扫描等指标来粗略地判断。而在某些国产数据库中无法找到类似的指标,或者说某些指标被定义了,但是里面并没有输出统计数据,有些是需要开启一些非默认的采集才能看到数据,有些则压根儿就是个摆设,仅仅是为今后提供这些数据预留了接口。
我曾经就这个问题咨询了某个国产数据库厂商,他的回答很干脆,目前这些指标都有,但是实际上内核都没有统计。我就问他,那么我如何去发现数据库中的表扫描问题比较严重呢?他说,那不是很简单的事情,分析SQL的执行计划不就知道了。
当然,分析SQL的执行计划我们肯定可以发现SQL中存在的不合理的表扫描,进一步发现索引设计不合理等问题。但是一竿子直接打到SQL,是不是有点过于简单粗暴了呢?如果我事先并不知道哪些SQL有问题,难道我还得一个个SQL去分析?
事实上,在目前的的大多数国产数据库用户那边,现在的绝大多数国产数据库运维仅仅限于分析数据库日志和优化SQL。除此之外的运维分析手段是十分有限的。如果现场运维人员无法从日志和SQL中解决问题,那么就比较麻烦了,非原厂工程师无法处置这样的故障,甚至有时候原厂工程师来了也解决不了。
过节期间,我们在测试一个某国产数据库的锁阻塞场景的时候,阻塞锁已经模拟出来了,但是在会话状态的阻塞标志中,就是查不到这个阻塞的存在。而几天前这个场景是能够轻松模拟出来的,可能是我们这两天调整了一些数据库参数,就出问题了。这很可能是某个BUG,也可能是某种特殊状态,但是对于我们来说,这个是一个黑盒子,完全无从分析。这种情况是国产数据库可观测性问题的第二种问题,那就是可观测性接口不能够比较准确地反映出国产数据库的运行情况。
第三种常见的问题是与运维经验缺失有关的。前几天我们在调试一个故障模型的时候发现调整某个参数有助于提升数据库并发处理的能力。但是我们在咨询某些用户和原厂工程师的时候,他们都认为这个参数是不建议调整的。要提升并发处理能力,一般都是建议给某个租户分配更多的资源,而不是通过调整这个参数,但是为什么必须这么做,谁都说不清楚。在官方文档中我看到了不建议调整该参数的警告,说是如果调得太小,影响性能,调得太大,消耗过多的CPU和内存资源,都会引发数据库运行的不稳定。能够在官方文档里有这样得说明,在国产数据库得文档里算是不错了,起码在文档里包含了一定的运维经验。不过这还不够,需要有几篇类似MOS文档的知识库来专门阐述这个问题。既然这个参数存在,那就肯定不是当摆设用的,怕用户调错出问题,这个出发点是好的,不过不够好,如果能够让用户学会通过调整这个参数来优化自己的系统,那才是真的好。
数据库原厂可能都不知道如何维护和调整数据库,这是目前我们在使用国产数据库的时候面临的一个更加尴尬的场面。国产数据库,想让用户用好并不容易,除了稳定性和性能之外,可观测性能力是国产数据库厂商急需补课的地方,如果搞不好这方面的技术问题,数据库就会变成一个黑盒子,想用好数据库产品,必须依赖于原厂研发辅助分析,这样的业务模式在目前阶段服务于少量头部客户的时候,还凑合能顶得住,用户多了,数据库厂商首先就支撑不住了。
oracle
sql数据库
大数据
aiops
sql优化
文章转载自
白鳝的洞穴
,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
文章被以下合辑收录
老白洞见:数据库国产化之旅(共127篇)
本合辑汇集了资深专家徐戟老师(笔名“白鳝的洞穴”)的深刻洞察,深入分析国产数据库在国产化浪潮中的发展机遇与面临的挑战。内容丰富、观点独到,旨在为业界同仁和关注者提供一份全面、深入的指南。
收藏合辑
采集到收藏夹
评论
领墨值
有奖问卷
意见反馈
客服小墨