暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
【GoldenDB专利】一种SQL故障定位方法、装置、系统及设备_202311851256.9_金篆信科有限责任公司.PDF
11
14页
0次
2025-03-07
免费下载
(19)国家知识产权局
(12)发明专利申请
(10)申请公布号
(43)申请公布日
(21)申请号 202311851256 .9
(22)申请日 2023 .12.29
(71)申请人 金篆信科有限责任公司
地址 100000 北京市大兴区北京经济技术
开发区科谷一街10号院8号楼18(
京自庄组
)
(72)发明人 王炳杰 
(74)专利代理机构 广东良马律师事务所 44395
专利代理师 马戎
(51)Int.Cl .
G06F
11/07
(2006 .01)
G06F
16/242
(2019 .01)
G06F
16/2455
(2019 .01)
(54)发明名称
一种SQL故障定位方法装置系统及设备
(57)摘要
本申请公开了一种SQL故障定位方法装置
系统及设备通过将当前执行计划结果与历史执
行计划结果进行对比从而可以直观地看出问题
SQL在哪一阶段出现了故障从而快速定位故障
原因对业务SQL进行优化同时本申请可应用
于多种类型数据库实用性广泛解决了目前对
执行计划的分析较为依赖专家经验存在不确定
且数据库结构的复杂性提高其中数据分布
及统计信息也随之变化使得执行计划的结果更
加复杂大大增加了DBA分析解决故障的难度
低了工作效率的技术问题
权利要求书2页 说明书9页 附图2页
CN 117743015 A
2024.03.22
CN 117743015 A
1 .一种SQL故障定位方法其特征在于包括
S1获取当前问题SQL语句的执行计划的第一执行结果
S2获取历史执行计划表中与所述当前问题SQL语句相同SQL ID的历史SQL语句的历史
执行计划的第二执行结果
S3将所述第一执行结果与所述第二执行结果进行对比确定所述当前问题SQL的故障
原因
2 .根据权利要求1所述的SQL故障定位方法其特征在于所述步骤S2具体包括
S21获取历史执行计划表中与所述当前问题SQL语句相同SQLID的若干个第一历史SQL
语句
S22确定若干个所述第一历史SQL语句中执行结果为执行成功且执行时间最长的第二
历史SQL语句
S23若所述第二历史SQL语句的SQL类型为非目标类型则从所述第一历史SQL语句中
剔除所述第二历史SQL语句并重新返回执行步骤S22
S24若所述第二历史SQL语句的SQL类型为目标类型则调取所述第二历史SQL语句对
应的历史执行计划的第二执行结果
3 .根据权利要求2所述的SQL故障定位方法其特征在于所述步骤S24具体包括
若所述第二历史SQL语句的SQL类型为目标类型且当前实例中存在有目标标签的计算
节点则通过所述计算节点采集第二历史SQL语句对应的历史执行计划的第二执行结果
若所述第二历史SQL语句的SQL类型为目标类型但当前实例中不存在有目标标签的计
算节点则通过全量SQL表中的所述第二历史SQL语句对应的计算节点采集历史执行计划的
第二执行结果
4 .根据权利要求1所述的SQL故障定位方法其特征在于所述步骤S3具体包括
将所述第一执行结果与所述第二执行结果进行对比获取数据库前后处理所述历史
SQL语句以及表连接的过程数据
根据所述过程数据确定所述当前问题SQL的故障阶段以及故障原因
5 .一种SQL故障定位装置其特征在于包括
第一获取单元用于获取当前问题SQL语句的执行计划的第一执行结果
第二获取单元用于获取历史执行计划表中与所述当前问题SQL语句相同SQLID的历史
SQL语句的历史执行计划的第二执行结果
故障定位单元用于将所述第一执行结果与所述第二执行结果进行对比确定所述当
前问题SQL的故障原因
6 .根据权利要求5所述的SQL故障定位装置其特征在于所述第二获取单元具体包括
获取子单元用于获取历史执行计划表中与所述当前问题SQL语句相同SQLID的若干个
第一历史SQL语句
确定子单元用于确定若干个所述第一历史SQL语句中执行结果为执行成功且执行时
间最长的第二历史SQL语句
第一处理子单元用于若所述第二历史SQL语句的SQL类型为非目标类型则从所述第
一历史SQL语句中剔除所述第二历史SQL语句并跳转至所述确定单元
第二处理子单元用于若所述第二历史SQL语句的SQL类型为目标类型则调取所述第
权 利 要 求 书
1/2
2
CN 117743015 A
2
二历史SQL语句对应的历史执行计划的第二执行结果
7 .根据权利要求6所述的SQL故障定位装置其特征在于所述第二处理子单元具体用
于:
若所述第二历史SQL语句的SQL类型为目标类型且当前实例中存在有目标标签的计算
节点则通过所述计算节点采集第二历史SQL语句对应的历史执行计划的第二执行结果
若所述第二历史SQL语句的SQL类型为目标类型但当前实例中不存在有目标标签的计
算节点则通过全量SQL表中的所述第二历史SQL语句对应的计算节点采集历史执行计划的
第二执行结果
8.根据权利要求5所述的SQL故障定位装置其特征在于所述故障定位单元具体用于
将所述第一执行结果与所述第二执行结果进行对比获取数据库前后处理所述历史
SQL语句以及表连接的过程数据
根据所述过程数据确定所述当前问题SQL的故障阶段以及故障原因
9 .一种SQL故障定位系统其特征在于包括:
运维平台计算节点以及系统实例
所述系统实例用于对各个实例创建对应记录全量SQL的全量SQL表;
所述计算节点用于向各个数据节点下发SQL语句的执行计划接收所述SQL语句的执行
结果向所述系统实例中所述SQL语句对应的全量SQL表中更新执行计划的执行结果
所述运维平台用于执行权利要求14任意一项所述的SQL故障定位方法
10.一种SQL故障定位设备,其特征在于所述设备包括处理器以及存储器
所述存储器用于存储程序代码并将所述程序代码传输给所述处理器
所述处理器用于根据所述程序代码中的指令执行权利要求14任一项所述的SQL故障
定位方法
权 利 要 求 书
2/2
3
CN 117743015 A
3
of 14
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。