在数据库内核领域,最复杂的技术是优化器,Oracle和DB2通过强大的优化器技术,在数据库领域纵横天下。而在数据库的DBA领域,最复杂的自然也是和优化器相关的SQL优化。
如果SQL的执行效率不高,那么在高并发情况下,一条SQL就能让数据库遭遇大麻烦,甚至是灾难性的雪崩。然而SQL优化需要的技能高,专家的成长周期长,这方面的人才一直是稀缺的。
因此,云和恩墨开发了专门的SQL审核工具SQM,通过规则去筛查SQL,在开发阶段防患于未然。然而今天我想说说,大模型AI加上传统的数据库监控工具,如zCloud,是否能够让DBA如虎添翼?
我一直希望zCloud产品能作为一个DBA的智能助手,让初级工程师具备专家级别的能力,现在云和恩墨通过我们积累的DBA知识训练一个DBA AI助手,内置在zCloud产品中。在一个客户现场,我试着把自己当成小白,对AI进行高度信任,看看这样一个产品是否具备生产力的提升能力。
案例一
单表访问的DELETE SQL优化
话不多说,就从TOP SQL入手,先选一个执行最慢、消耗资源多的SQL。初步看,这是一条DELETE语句。从名称看,是从推送信息表中删除过期或者已经应用的数据。这里可以直接调用AI给出优化建议。但是作为一个负责任的小白,我还想慎重点。
先查看一下执行计划,根据我初级的理解可知,这里的全表扫描可能是影响性能的关键。好了,我的知识就只有这么多,别的不能更懂了。
二话不说,直接让AI上。下次我应该告知它这是一个Oracle数据库。但是没关系,先让它发挥一下。注意,这里边提出了一堆建议。第一个非常好,系统提示这表建的不规范,使用了一个系统保留字“Function”,没办法,程序员总是很随意的。已经上车了,改不了这个。
我就看全表扫描它怎么建议,毫无疑问是索引。AI助手给出了可执行的SQL语句。我们可以调用MCP直接执行。但是为了慎重起见,也不要在生产运行的峰值期间执行,切记切记。但是我选择了相信,先把索引建上。
优化后的效果呈现如图所示,在新的执行计划下,单次的SQL执行时间从1秒缩短到0.7毫秒,执行40次的时间仅为0.028秒,这是1400倍的提升。
我们可以看到一个索引对于一个应用的功能是立竿见影的。DBA SQL优化三板斧:索引、索引、索引。
案例二
一个复杂点的INSERT SQL
案例1的SQL非常简单,我们看一个稍微复杂点的SQL。一个包含WITH子句的INSERT操作。这次挑了2个表,只关心如何优化索引。
AI给出了索引语句。话说这个SQL比较复杂,如果DBA来格式化、分析,还是需要不少时间的。AI助手给出的第一个语句,通过索引优化NOT EXISTS查询,还包括其他建议,但是先忽略了,主要看看第一个索引是否有效。
我们来看看增加了这个索引前后的效率对比,大约是150倍的性能提升。也可以了,没用几分钟时间就有了这样的效果。
案例三
更复杂的多表关联查询
既然有效率,就多尝试。在客户系统中,又发现一个历史悠久的查询语句,看起来比较复杂:
粗看一下执行计划,等待最长的是一个历史数据表,CPU_COST有11亿之多,就在这个位置下手,给AI助手一个指向:
作为一个初级DBA,我不用再瞪眼分析SQL了,到底有多少个字段在使用。AI助手马上给出了一个索引建议(注意:其他建议也很有建设性,但是我只信索引),建上再说:
看结果,索引生效了:
SQL执行时间从184毫秒变成了7毫秒,是26倍的性能提升。
总结
一个生产力工具应该具备哪些特征和能力?
从数据库SQL优化来看,我认为核心能力应聚焦于诊断深度、改进精度和协作效率:
1
自动化性能诊断与根因定位
无需人工干预,智能捕获执行计划、IO/CPU消耗等信息,自动识别慢查询、资源瓶颈和架构缺陷。
2
可落地的智能优化建议
给出精准、安全、可执行的改进方案,而非泛泛而谈。
3
低门槛的协作与知识沉淀
让DBA、开发和运维在同一平台高效协同,经验不随人员流失而丢失。
优秀的工具不仅是“扫描器”,更是诊断专家+改进顾问+协作中枢,将个体经验转化为团队生产力。zCloud正处于这一路线上。从我的感觉上,有了AI助手,让我的SQL优化效率大幅提升,抛弃了枯燥的SQL格式化、查询谓词分析,只需要识别和提示一下关键的方向,AI就能给出可参考的建议。这样的交互过程中,探索的乐趣极大增加。
AI在这一优化流程中,真正做到了让专家聚焦在更有价值的判断上,而不是低价值的体力劳动。zCloud这样的能力,可以让任何只具备初级数据库知识的DBA,如虎添翼,百倍效率提升。
数据驱动,成就未来,云和恩墨,不负所托!
云和恩墨创立于2011年,是业界领先的“智能的数据技术提供商”。公司以“数据驱动,成就未来”为使命,致力于将创新的数据技术产品和解决方案带给全球的企业和组织,帮助客户构建安全、高效、敏捷且经济的数据环境,持续增强客户在数据洞察和决策上的竞争优势,实现数据驱动的业务创新和升级发展。
自成立以来,云和恩墨专注于数据技术领域,根据不断变化的市场需求,创新研发了系列软件产品,涵盖数据库、数据库存储、数据库管理和数据智能等领域。这些产品已经在集团型、大中型、高成长型客户以及行业云场景中得到广泛应用,证明了我们的技术和商业竞争力,展现了公司在数据技术端到端解决方案方面的优势。