暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

让DeepSeek来玩玩SQL优化怎么样?

白鳝的洞穴 2025-03-05
39
老白的前言:
最近被几个小伙伴推着在往DeepSeek应用落地的路上走着,越走越感觉有滋味。很多朋友搭了个知识库或者搭了个本地的蒸馏模型,试着问了几个问题就对DeepSeek写出了大段的评价。或褒或贬,不过我觉得似乎还没有找到真正的方向。任何复杂工作任务都不大可能通过一个开源的或者完全公开的解决方案彻底解决掉,如果真的如此了,说明AGI已经真的到来了。以我个人浅薄之见,AGI离我们人类还很遥远,甚至现在的路数是不是AGI的路数,也还没有定数。
在一些规律性很强、劳动密集型的领域,AI替代人类的戏码正在大规模上演,这是时代发展的必然,有人叹息有人兴奋,任何一种情感都是很真实的。而在一些复杂场景中,AI目前还只能以工具的形态给予辅助。即使如此,你也不能指望装个满血的DS 671B就万事大吉,AI能帮你干所有的事情了。DS 671B只是一个博学的学生,好像刚刚从学校毕业,走上社会的博士生,它知识渊博,比很多专家都拥有更多的学时和前沿见解,但是它没有任何工作经验。必须用专业的专家知识去辅助它、教育它,它才能真正的帮你干活。最近我和一些小伙伴在这方面一点点的探索,就像是在给DeepSeek搞实践培训一样,慢慢教会它完成以前必须由数据库专家完成的工作。虽然目前已经取得了一些效果,但是想要真正大成,还需要十分艰苦的工作才行。今天给大家分享的是用DS来帮我们优化SQL,这个工作对于专家来说是日常工作的一部分,不过即使是专家也很难写一个工具出来自动干这个活。SQL执行是规律性很强的工作,因此这也是大模型能够发力的重要场景,在CHATGPT刚出来的时候,国内外就有不少团队利用CHATGPT做这项工作,效果也不错。现在急于DS来做,感觉更容易了,不用费太大的劲儿就能获得还不错的效果。下面是转发的“当DBAIOPS遇到DS深度推理”公众号上的一篇文章。
DS在智能运维中担当能够深度思考和推理的专家的能力是有目共睹的。不过我们希望DS能够做更多的事情。下一件事我们就想到让DS来优化SQL。实际上大模型做SQL优化的能力是很强的,在几年前我们就试着用ChatGPT来帮我们看SQL执行计划,帮我们找出其中存在问题的算子,效果相当好。
因为SQL执行计划是十分有规律性的数据,只要告诉大模型如何解读这个数据包,就很容易让它帮你完成一些工作了。
我们今天要优化的SQL不算太复杂,执行计划一共20个步骤。
系统生成语料后,我们首先利用DeepSeek的API尝试了一下分析结果,在我们的提问模板的引导下,顺利地找到了执行计划中的问题点:ID 15的算子是优化的关键。
从上面的分析来看,先不管其准确度,从专业性上来看还是可圈可点的。在考虑压缩上,是比一般的数据库专家考虑得更多的。这种压缩在某些数据特征上我们是用过的,不过这个并不是我们语料产生的效果,其准确性还是存疑的。通过规范提问模板,这种创新可以被加强,也可以被抑制。
总体来说,能够达到这个水准还是不错的。从设计模板到达到目前的效果,也仅仅花了2-3天而已。用传统的方式写程序来做这些事情,恐怕两三个月也不见得搞得定。从这里也可以看出DS的巨大潜力。
实验完成后,将这个算法整合到平台中,通过工具自动生成提问模板,在32b的环境中进行分析。得到的结论虽然比刚才的简单一些,阐述得也没那么详细,不过得到的结论是差不太多的。在一个32b的小环境中能够取得满血DS类似的效果。这项探索又取得了不错的效果。



文章转载自白鳝的洞穴,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论