[发明专利]一种基于机器学习的数据表连接顺序选择方法有效
| 申请号: | 202110152193.2 | 申请日: | 2021-02-04 |
| 公开(公告)号: | CN112905591B | 公开(公告)日: | 2022-08-26 |
| 发明(设计)人: | 乔少杰;韩楠;宋学江;高瑞玮;肖月强;张小辉;赵兰;李鑫钰;冉先进;甘戈;孙科;范勇强;黄萍;魏军林;温敏;程维杰;叶青;余华;向导;彭京;周凯;元昌安;黄发良;覃晓;李斌勇;张永清 | 申请(专利权)人: | 成都信息工程大学;成都探码科技有限公司;四川省金科成地理信息技术有限公司 |
| 主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/242;G06N3/08 |
| 代理公司: | 北京正华智诚专利代理事务所(普通合伙) 11870 | 代理人: | 杨浩林 |
| 地址: | 610015 四川省成都市双*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 机器 学习 数据表 连接 顺序 选择 方法 | ||
本发明公开了一种基于机器学习的数据表连接顺序选择方法,包括以下步骤:S1、对SQL语句进行编码,分别生成列、数据表和连接关系的特征向量;S2、根据列和数据表的特征向量,设计向量树AT来生成连接树的特征向量;S3、根据列、数据表、连接关系和连接树的特征向量,设计部分连接计划模型SP来生成部分连接计划的特征向量,进而生成下一时刻连接状态的特征向量;S4、根据下一时刻连接状态的特征向量,构建深度强化学习模型J,并结合部分连接计划模型SP与向量树AT,生成数据表的最优连接顺序。本发明解决了现有查询优化器生成数据表的次优连接顺序导致查询效率较低的问题。
技术领域
本发明涉及数据库领域,具体涉及一种基于机器学习的数据表连接顺序选择方法。
背景技术
查询操作是关系数据库的基本操作,查询的效率是数据库系统的重要指标。于是查询优化成为数据库领域的重要研究方向。查询优化是为了构建一个代价最小的执行计划,从而达到在查询执行过程中的真实查询时间最低,实现用户的良好体验。通常,查询优化包括基数估计、代价模型、连接顺序选择等方面。查询优化的效果直接影响数据库应用程序的性能。
而数据库查询优化器的重难点是多表连接顺序选择的问题,解决这个问题很复杂,代价巨大。因为它涉及到了为每个可选的连接顺序计算成本,从而极大地影响了查询优化器的优化过程。
传统的数据库的优化方法基本上是基于基数估计和代价模型,采用动态规划搜索所有可能的连接顺序方案,虽然可以得到较好的方案,但搜索空间巨大,花费的代价令人望而却步。而采用剪枝技术加上启发式方法,虽然产生执行计划很快,但是通常会得到糟糕的计划。
发明内容
针对现有技术中的上述不足,本发明提供的一种基于机器学习的数据表连接顺序选择方法解决了现有查询优化器生成数据表的次优连接顺序导致查询效率较低的问题。
为了达到上述发明目的,本发明采用的技术方案为:一种基于机器学习的数据表连接顺序选择方法,包括以下步骤:
S1、对SQL语句进行编码,分别生成列、数据表和连接关系的特征向量;
S2、根据列和数据表的特征向量,设计向量树AT来生成连接树的特征向量;
S3、根据列、数据表、连接关系和连接树的特征向量,设计部分连接计划模型SP来生成部分连接计划的特征向量,进而生成下一时刻连接状态的特征向量;
S4、根据下一时刻连接状态的特征向量,构建深度强化学习模型J,并结合部分连接计划模型SP与向量树AT,生成数据表的最优连接顺序。
进一步地,步骤S1包括以下分步骤:
S11、对SQL语句中WHERE子句包含的列进行编码,生成列的特征编码;
S12、对列的特征编码进行处理,生成列的特征向量;
S13、根据列的特征向量,生成数据表的特征矩阵;
S14、根据数据表的特征矩阵,生成数据表的特征向量;
S15、对SQL语句中WHERE子句包含的连接关系进行编码,生成连接关系的特征编码;
S16、对连接关系的特征编码进行处理,生成连接关系的特征向量。
上述进一步方案的有益效果为:在数据预处理阶段,对SQL语句的信息采用特征向量进行表示,能够更适合后续机器学习模型的数据形式;采用特征向量不仅能够更准确地提取关键信息,而且能够包括许多SQL语句的信息,为后续步骤提供准确且全面的数据特征。
进一步地,步骤S11中对SQL语句中WHERE子句包含的列进行编码的信息包括:列关联的连接谓词和选择谓词;所述连接谓词包括:连接操作;所述选择谓词包括:等于、不等于、小于和大于的运算操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都信息工程大学;成都探码科技有限公司;四川省金科成地理信息技术有限公司,未经成都信息工程大学;成都探码科技有限公司;四川省金科成地理信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110152193.2/2.html,转载请声明来源钻瓜专利网。





