[发明专利]一种基于数据约束的数据库查询优化方法在审
| 申请号: | 202111670662.6 | 申请日: | 2021-12-31 |
| 公开(公告)号: | CN114328608A | 公开(公告)日: | 2022-04-12 |
| 发明(设计)人: | 张桦;段浩洋;叶晨;徐宏;吴以凡;戴国骏 | 申请(专利权)人: | 杭州电子科技大学 |
| 主分类号: | G06F16/2453 | 分类号: | G06F16/2453;G06F16/2458;G06F16/22;G06F16/36;G06F16/901;G06N3/04;G06N3/08 |
| 代理公司: | 杭州君度专利代理事务所(特殊普通合伙) 33240 | 代理人: | 朱月芬 |
| 地址: | 310018 浙*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 数据 约束 数据库 查询 优化 方法 | ||
本发明公开了一种基于数据约束的数据库查询优化方法。本发明包括如下步骤:步骤1:获取查询语句;步骤2:获取表的编码;步骤3:查询语句输入解析模块解析成为查询树;步骤4:查询树输入传统查询优化器;步骤5:计划编码;步骤6:tcnn树卷积神经网络预测计划的执行时间;步骤7:成本修正;步骤8:数据库执行模块;步骤9:经验重放。本发明针对传统数据库中存在的成本估计误差问题,使用树卷积神经网络,充分学习查询计划的结构特征,在此基础上,利用多列之间存在的数据约束设计一种成本估计修正方法,提高树卷积神经网络模型的训练效率。本发明能提高模型的训练效率,给出准确的成本估计,最终达到查询优化的目的。
技术领域
本发明涉及数据库查询优化领域、强化学习领域。本发明利用强化学习构建数据库查询优化过程中所用到的计划成本估计模型,并且采用数据约束修正计划成本估计中由于数据约束存在而产生的估计误差,适用于传统数据库查询过程中,计划成本估计不准确,产生次优计划,导致查询效率低的问题。
背景技术
在数据库管理系统中,查询优化依旧是一个非常具有挑战性的课题。在一个查询语句执行过程中,查询语句通过解析成为一个语法树,随后经过语义分析变成一个查询树,将查询树送到查询优化器中,产生多个候选查询,通过计划基数估计、成本估计,选择一个最优的查询计划,送到执行器中。所以传统数据库查询优化中基数、成本估计尤为重要,它可以指导优化器中计划的选择。但是传统优化器的成本估计并不能提供高质量的估计。其中一个原因是由于传统数据库管理系统不能提供数据表中列和列之间的关系。数据库表中列与列之间存在的关系称为数据约束,传统数据库管理系统利用表中单列数据的统计信息进行基数估计,但对于两个存在数据约束的列来说,这样的基数估计存在误差。
随着人工智能发展,数据库社区提出“AI4DB”的思想,旨在利用人工智能技术优化数据库查询。其中提出一点:利用人工智能技术改造查询优化器中的组成模块。由于合理的查询计划对于查询处理非常重要,我们可以通过用合适的人工智能技术替代查询优化器中基数估计、成本估计模块,提高执行计划的生成效率和质量。在查询优化领域,已有学者开始将机器学习应用于查询优化领域。一位学者利用强化学习来优化查询优化过程中的连接顺序问题,但是这位学者只关注查询计划中,表连接顺序成本最小化,没有关注整个计划的成本。另外一位学者提出基于深度学习的端到端成本估计器,但是其训练数据比较难以获得,尤其存在训练时间过长的缺点,这也是在“AI4DB”的发展过程中需要解决的问题。
本发明是一种基于数据约束的数据库查询优化方法,此方法在传统数据库查询优化器的基础上,利用列与列之间存在的数据约束优化查询计划的成本估计模块,为查询计划执行模块提供最优的计划。
发明内容
本发明提出一种基于数据约束的数据库查询优化方法,针对传统数据库中存在的成本估计误差问题,使用树卷积神经网络,充分学习查询计划的结构特征,在此基础上,利用多列之间存在的数据约束设计一种成本估计修正方法,提高树卷积神经网络模型的训练效率。所提出的方法主要包括两个方面:一方面是利用数据约束修正计划的成本估计:首先利用数据约束优化查询语句,优化过后的查询语句比优化之前的查询语句拥有更好的性能(变成查询树之后,在传统优化器上拥有更准确基数、成本估计),然后将优化之前的查询语句的查询计划的成本估计替换成优化之后的成本估计。另一方面,针对计划成本估计,进行了计划的特征选取、特征编码、模型训练。计划树的叶子结点是扫描结点、非叶子结点是连接结点。选取特征时,要考虑特征和计划成本有密切的关系,最终选取的特征是计划树每个结点中的操作类型、成本、基数。扫描结点中特别存在的特征是对应表的数据分布特征。操作类型编码方式是一位有效编码方式,成本和基数采用标准化的浮点数编码。表的整型数据分布采用标准化浮点数编码,字符型数据,采用词向量编码方式。因为计划是树状结构,所以我们使用树卷积神经网络预测计划的质量。模型训练时结合了经验重放技术,使模型快速收敛。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111670662.6/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





