[发明专利]一种基于图神经网络的数据库查询优化方法及系统有效
申请号: | 202110491751.8 | 申请日: | 2021-05-06 |
公开(公告)号: | CN113010547B | 公开(公告)日: | 2023-04-07 |
发明(设计)人: | 范淑焕;侯孟书;何东升;廖建明;周世杰 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453;G06F16/2455;G06F16/22;G06N3/044;G06N3/045;G06N3/08 |
代理公司: | 成都金英专利代理事务所(普通合伙) 51218 | 代理人: | 袁英 |
地址: | 610041 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 神经网络 数据库 查询 优化 方法 系统 | ||
1.一种基于图神经网络的数据库查询优化方法,其特征在于,包括以下步骤:
数据采集:根据数据的使用规律来合理的调节采样,包括:对系统整个运行过程所产生的信息进行收集,积累后续算法训练所需要的数据;
基数及代价估计:利用树型图神经网络提取查询计划树的结构特征,并使用图卷积网络提取各个数据列的关联关系及连接的拓扑关系,从而建立基数及代价估计网络模型;所述基数及代价估计网络模型包括全局连接关系的表示层和查询计划树的表示层;所述全局连接关系表示层根据采样的方法构建列与列连接相关图,所述查询计划树表示层从物理执行计划树中提取查询结构信息,采取树型神经网络TreeLSTM表示物理执行计划树,对非叶子节点的连接操作算子采用onehot编码,对叶子节点的连接表采用表数据表示层;所述表数据表示层包含利用线性相关分析构建的列相关图、数据库现有基数估计方法构建的列矩阵以及max和min表示and和or计算的查询谓词树;
连接顺序优化:利用图卷积算法提取查询特征和连接顺序特征,并利用强化学习算法感知数据库真实环境,以真实反馈来不断优化模型,从而提升连接顺序决策的效果;所述强化学习,将连接顺序的优化器作为智能体,数据库环境为真实的感知世界,选择某个连接顺序即为该智能体的动作,对于该顺序下的计划所对应的真实执行时间为当前动作的奖励;优化过程中逻辑计划树在数据编码和表示层与基数估计中的模型相同;所述强化学习还包括利用列连接权值关系图在向量中进行图卷积运算,拼接后输入到包括决策网络和目标网络的Double Q-Network结构,当决策网络趋于稳定后更新目标网络,避免在线更新采样数量不足使方差过大;
通过对数据分布特征、关联关系、数据库环境特点的学习,建立基数估计模型和连接顺序优化模型,并将算法融合到TiDB分布式关系型数据库中。
2.根据权利要求1所述的基于图神经网络的数据库查询优化方法,其特征在于,所述数据采集包括全局性数据的采集、离线数据的采集和在线数据的采集;所述全局性数据的采集触发点为主动式触发,对修改的数据重新采样,替换旧的数据;所述离线数据的采集可以通过维护一个数据池,对相关数据进行大规模采样,也可以依据算法的效果的情况决定是否采样;所述在线数据的采集在算法主动请求数据时,根据请求从数据库环境中加载数据,然后将数据返回给算法,完成一次数据同步过程。
3.根据权利要求1所述的基于图神经网络的数据库查询优化方法,其特征在于,所述基数及代价估计网络模型利用Tree¬LSTM结构对查询计划数进行特征提取,并用GCN的图神经网络模型对列与列的关系进行特征提取,设计并实现列结合两种图结构的基数预估网络模型。
4.根据权利要求1所述的基于图神经网络的数据库查询优化方法,其特征在于,还包括网络远程调用,所述网络远程调用利用gRPC实现,方便接入数据库,包括以下步骤:
步骤1:定义服务的数据结构,要利用Protobuf序列化工具对服务进行定义,包括数据对象的组成结构,并对服务接口的名称,输入参数,返回值进行定义,用于具体的服务功能的调用;
步骤2:服务的处理逻辑实现,从网络请求中反序列化客户端的输入参数,依据具体的请求和业务逻辑在服务端完成计算结果,最终序列化结果返回给客户端结果;
步骤3:远程服务调用实现,首先建立远程的服务网络连接请求,构造请求的参数和指定的服务,然后序列化后发送给服务端,待服务端处理完请求后得到具体结果。
5.基于图神经网络的数据库查询优化系统,用于权利要求1~4任意一项所述的基于图神经网络的数据库查询优化方法的实现,并在TiDB本身的结构上进行扩展,其特征在于,包括数据采集模块、算法控制模块、基数估计模块和连接顺序选择模块;所述数据采集模块用于对系统整个运行过程所产生的信息进行收集,积累后续算法训练所需要的数据,同时将一次查询过程中所产生的中间信息保存下来;所述算法控制模块根据算法的执行效率决定是否需要重优化模型,保证模型的正常工作;所述基数估计模块用于预测物理计划的最终结果的大小,并基于基数做出代价估计;所述连接顺序选择模块优化执行计划树中的表与表之间的连接顺序依据强化学习的方法,通过在线学习的方式动态的从系统反馈中不断优化网络。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110491751.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:防损伤定向引导硬膜下引流管套件
- 下一篇:高温测试图像热流扰动校正装置及方法