(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210364048.5
(22)申请日 2022.04.07
(71)申请人 京东科技信息技 术有限公司
地址 100176 北京市北京经济技 术开发区
科创十一 街18号院2号楼6层6 01
(72)发明人 高新刚 刘启荣
(74)专利代理 机构 北京清亦华知识产权代理事
务所(普通 合伙) 11201
专利代理师 单冠飞
(51)Int.Cl.
G06F 16/2453(2019.01)
G06F 16/242(2019.01)
G06F 16/2455(2019.01)
G06F 16/35(2019.01)
G06F 40/30(2020.01)G06K 9/62(2022.01)
G06N 3/04(2006.01)
G06N 3/08(2006.01)
(54)发明名称
SQL执行计划的确定方法和装置
(57)摘要
本申请公开了一种SQL执行计划的确定方法
和装置, 其中, 所述方法包括: 接收结构化查询语
言SQL语句; 将SQL语句输入到 预先训练好的优化
器模型中, 以得到SQL语句对应的执行计划。 由
此, 通过预先训练好的优化器模 型即可快速确定
出SQL语句对应的执行计划, 进而可提升数据库
的查询效率。
权利要求书2页 说明书9页 附图6页
CN 114756578 A
2022.07.15
CN 114756578 A
1.一种SQ L执行计划的确定方法, 其特 征在于, 所述方法包括:
接收结构化 查询语言SQ L语句;
将所述SQL语句输入到预先训练好的优化器模型中, 以得到所述SQL语句对应的执行计
划。
2.如权利要求1所述的方法, 其特征在于, 所述优化器模型包括语义表示层和执行计划
确定层, 所述将所述SQL语句输入到预先训练好的优化器模型中, 以得到所述SQL语句 对应
的执行计划, 包括:
将所述SQ L语句输入至所述语义表示层, 以得到所述SQ L语句的语义特 征;
将所述语义特征输入至所述执行计划确定层, 以通过所述执行计划确定层确定所述
SQL语句对应的执 行计划。
3.如权利要求2所述的方法, 其特征在于, 所述执行计划确定层包括分类子层和执行计
划确定子层, 所述将所述语义特征输入至所述执行计划确定层, 以通过所述执行计划确定
层确定所述SQ L语句对应的执 行计划, 包括:
将所述语义特 征输入至所述分类子层, 以得到所述SQ L语句的业 务类型;
将所述业务类型输入至所述执 行计划确定子层, 以得到所述SQ L语句对应的执 行计划。
4.如权利要求2所述的方法, 其特征在于, 所述将所述SQL语句输入至所述语义表示层,
以得到所述SQ L语句的语义特 征, 包括:
对所述SQ L语句进行向量表示, 以得到所述SQ L语句的向量表示;
将所述向量表示输入至所述语义表示层, 以得到所述SQ L语句的语义特 征。
5.一种用于确定SQ L执行计划的模型训练方法, 其特 征在于, 所述方法包括:
获取训练数据, 其中, 所述训练数据包括SQ L样本语句以及对应的执 行计划样本;
将所述SQL样本语句作为优化器模型的输入, 并将所述执行计划样本作为所述优化器
模型的输出, 对所述优化器模型进行训练, 以得到训练好的优化器模型。
6.如权利要求5所述的方法, 其特征在于, 所述SQL样本语句对应的执行计划样本的获
取方式为:
根据所述SQL样本语句对应的语义特征, 从多个候选类簇中, 确定所述SQL样本语句所
属于的目标类簇;
将所述目标类簇所对应的执 行计划作为所述SQ L样本语句对应的执 行计划样本 。
7.如权利要求6所述的方法, 其特征在于, 所述根据所述SQL样本语句对应的语义特征,
从多个候选类簇中, 确定所述SQ L样本语句所属于的目标类簇, 包括:
针对每个所述候选类簇, 根据所述候选类簇中的类中心SQL语句的语义特征和所述SQL
样本语句对应的语义特征, 确定所述候选类簇中的类中心SQL语句与所述SQL样本语句之间
的语义相似度;
将语义相似度最大的类中心SQL语句所对应的类簇作为所述SQL样本语句所属于的目
标类簇。
8.一种SQ L执行计划的确定装置, 其特 征在于, 包括:
接收模块, 用于 接收结构化 查询语言SQ L语句;
输入模块, 用于将所述SQL语句输入到预先训练好的优化器模型中, 以得到所述SQL语
句对应的执 行计划。权 利 要 求 书 1/2 页
2
CN 114756578 A
29.如权利要求8所述的装置, 其特征在于, 所述优化器模型包括语义表示层和执行计划
确定层, 所述输入 模块, 包括:
第一输入单元, 用于将所述SQL语句输入至所述语义表示层, 以得到所述SQL语句的语
义特征;
第二输入单元, 用于将所述语义特征输入至所述执行计划确定层, 以通过所述执行计
划确定层确定所述SQ L语句对应的执 行计划。
10.如权利要求9所述的装置, 其特征在于, 所述执行计划确定层包括分类子层和执行
计划确定子层, 所述第二输入单 元, 具体用于:
将所述语义特 征输入至所述分类子层, 以得到所述SQ L语句的业 务类型;
将所述业务类型输入至所述执 行计划确定子层, 以得到所述SQ L语句对应的执 行计划。
11.如权利要求9所述的装置, 其特 征在于, 所述第一输入单 元, 具体用于:
对所述SQ L语句进行向量表示, 以得到所述SQ L语句的向量表示;
将所述向量表示输入至所述语义表示层, 以得到所述SQ L语句的语义特 征。
12.一种用于确定SQ L执行计划的模型训练装置, 其特 征在于, 所述装置包括:
获取模块, 用于获取训练数据, 其中, 所述训练数据包括SQL样本语句以及对应的执行
计划样本;
训练模块, 用于将所述SQL样本语句作为优化器模型的输入, 并将所述执行计划样本作
为所述优化器模型的输出, 对所述优化器模型进行训练, 以得到训练好的优化器模型。
13.如权利要求12所述的装置, 其特 征在于, 所述获取模块, 包括:
第一确定单元, 用于根据所述SQL样本语句对应的语义特征, 从多个候选类簇中, 确定
所述SQL样本语句所属于的目标类簇;
第二确定单元, 用于将所述目标类簇所对应的执行计划作为所述SQL样本语句对应的
执行计划样本 。
14.如权利要求13所述的装置, 其特 征在于, 所述第一确定单 元, 具体用于:
针对每个所述候选类簇, 根据所述候选类簇中的类中心SQL语句的语义特征和所述SQL
样本语句对应的语义特征, 确定所述候选类簇中的类中心SQL语句与所述SQL样本语句之间
的语义相似度;
将语义相似度最大的类中心SQL语句所对应的类簇作为所述SQL样本语句所属于的目
标类簇。
15.一种电子设备, 其特 征在于, 包括:
存储器、 处理器及存储在存储器上并可在处理器上运行的计算机程序, 其特征在于, 所
述处理器执行所述程序时实现如权利要求 1‑4中任一项 所述的SQL执行计划的确定方法, 或
者如权利要求5 ‑7任一项所述的确定SQ L执行计划的模型训练方法。
16.一种计算机可读存储介质, 其上存储有计算机程序, 其特征在于, 该程序被处理器
执行时实现如权利要求1 ‑4中任一项所述的SQL执行计划的确 定方法, 或者如权利要求5 ‑7
任一项所述的确定SQ L执行计划的模型训练方法。权 利 要 求 书 2/2 页
3
CN 114756578 A
3
专利 SQL执行计划的确定方法和装置
文档预览
中文文档
18 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共18页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 17:44:07上传分享