一种基于机器学习的数据查询优化处理方法及装置制造方法及图纸

技术编号:36366951 阅读:30 留言:0更新日期:2023-01-18 09:23
本发明专利技术提供一种基于机器学习的数据查询优化处理方法及装置。该方法包括:获取输入的结构化查询语句信息;确定所述结构化查询语句信息对应的执行计划,并将所述执行计划对应的执行环境参数信息转化成相应的表示向量;将所述表示向量输入到基于长短期记忆网络的查询优化器模型中,得到所述查询优化器模型输出的代价信息,并基于所述代价信息确定相应的目标执行计划;其中,所述查询优化器模型是将历史执行计划作为样本数据、所述历史执行计划对应的实际代价作为目标值进行训练得到的。采用本发明专利技术公开的方法,能够基于动态的执行环境参数信息,在不同执行环境下得到更准确的代价估计,从而选择到更优的执行计划,提高了查询优化处理的效率和精确度。化处理的效率和精确度。化处理的效率和精确度。

【技术实现步骤摘要】
一种基于机器学习的数据查询优化处理方法及装置


[0001]本专利技术涉及计算机应用
,具体涉及一种基于机器学习的数据查询优化处理方法和装置。另外,还涉及一种电子设备及处理器可读存储介质。

技术介绍

[0002]结构化查询语言(Structured Query Language)简称SQL,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统中存储的数据。结构化查询语言能够允许用户在高层数据结构上工作。其不要求用户指定数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。同时,结构化查询语言语句可以嵌套,从而使其具有极大的灵活性和强大的功能。
[0003]近年来,随着互联网技术的快速发展,借助结构化查询语言实现数据查询应用越来越广泛。然而,由于数据查询过程的执行环境是极其复杂的,尤其是随着数据量和数据分布的变化,现有技术中用静态统计数据进行优化方案匹配,优化质量准确性不高,同时无法应对数据查询的多种执行场景,导致数据查询效率较低。因此,如何设计一种稳定、高效的基于机器学习的数据查询优化处理方案成为本领域技术人员研究的重要课题。

技术实现思路

[0004]为此,本专利技术提供一种基于机器学习的数据查询优化处理方法及装置,以解决现有技术存在的数据查询优化处理方案局限性较高,导致复杂执行环境下的数据查询效率和准确性较差的问题。
[0005]第一方面,本专利技术提供一种基于机器学习的数据查询优化处理方法,包括:获取输入的结构化查询语句信息;
[0006]确定所述结构化查询语句信息对应的执行计划,并将所述执行计划对应的执行环境参数信息转化成相应的表示向量;
[0007]将所述表示向量输入到基于长短期记忆网络的查询优化器模型中,得到所述查询优化器模型输出的代价信息,并基于所述代价信息确定相应的目标执行计划;
[0008]其中,所述查询优化器模型是将历史执行计划作为样本数据、所述历史执行计划对应的实际代价作为目标值进行训练得到的。
[0009]在一个实施例中,所述执行环境参数信息包含查询解析树、执行所述结构化查询语句信息的查询负载数据、执行环境的硬件特征信息以及软件特征信息。
[0010]在一个实施例中,所述查询优化器模型,包括:基数估计模块,成本估计模块,连接顺序选择模块、具有机器学习和强化学习能力的学习型优化器模块;
[0011]其中,所述基数估计模块,用于确定所述执行计划每个级别上处理的总行数,将所述总行数确定为所述执行计划的基数信息;
[0012]所述成本估计模块,用于基于所述结构化查询语句信息对应的统计信息,确定相
应的查询优化器中各个物理路径的成本信息;其中,统计信息包括:高频值统计信息,直方图统计信息,目标系数统计信息,类型高频值信息,数组类型直方图信息以及范围值类型统计信息;
[0013]所述连接顺序选择模块,用于基于所述长短期记忆网络的强化学习能力进行连接顺序选择优化,得到对应的执行计划;
[0014]所述学习型优化器模块,用于基于所述基数信息和所述成本信息,利用机器学习和强化学习的方式从所述执行计划中确定相应的目标执行计划。
[0015]在一个实施例中,所述的基于机器学习的数据查询优化处理方法,还包括:基于预设的改写规则对预先确定的结构化查询语句信息的优化类型对所述结构化查询语句信息中的目标查询语句进行优化改写;或者,基于预设的学习规则,采用机器学习和强化学习的方式对所述结构化查询语句信息进行优化选择,得到相应的查询改写结果。
[0016]在一个实施例中,所述的基于机器学习的数据查询优化处理方法,还包括:采用对应数据库的查询解析工具中的SQL解析器对所述结构化查询语句信息进行解析,得到包含运算符表达式的查询解析树;利用所述查询优化器模型,根据预设的插拔原则对所述运算符表达式进行优化处理,得到相应的查询解析结果。
[0017]在一个实施例中,所述长短期记忆网络查询优化器模型用于,基于从所述历史执行计划进行特征提取得到的表示特征,对所述结构化查询语句信息进行分析处理,确定对应的代价信息。
[0018]第二方面,本专利技术还提供基于机器学习的数据查询优化处理装置,包括:结构化查询语句获取单元,用于获取输入结构化查询语句信息;
[0019]向量表示单元,用于确定所述结构化查询语句信息对应的执行计划,将所述执行计划对应的执行环境参数信息转化成相应的表示向量;
[0020]查询优化处理单元,用于将所述表示向量输入到基于长短期记忆网络的查询优化器模型中,得到所述查询优化器模型输出的代价信息,并基于所述代价信息确定相应的目标执行计划;
[0021]其中,所述查询优化器模型是将历史执行计划作为样本数据、所述历史执行计划对应的实际代价作为目标值进行训练得到的。
[0022]在一个实施例中,所述执行环境参数信息包含查询解析树、执行所述结构化查询语句信息的查询负载数据、执行环境的硬件特征信息以及软件特征信息。
[0023]在一个实施例中,所述查询优化器模型,包括:基数估计模块,成本估计模块,连接顺序选择模块、具有机器学习和强化学习能力的学习型优化器模块;
[0024]其中,所述基数估计模块,用于确定所述执行计划每个级别上处理的总行数,将所述总行数确定为所述执行计划的基数信息;
[0025]所述成本估计模块,用于基于所述结构化查询语句信息对应的统计信息,确定相应的查询优化器中各个物理路径的成本信息;其中,统计信息包括:高频值统计信息,直方图统计信息,目标系数统计信息,类型高频值信息,数组类型直方图信息以及范围值类型统计信息;
[0026]所述连接顺序选择模块,用于基于所述长短期记忆网络的强化学习能力进行连接顺序选择优化,得到对应的执行计划;
[0027]所述学习型优化器模块,用于基于所述基数信息和所述成本信息,利用机器学习和强化学习的方式从所述执行计划中确定相应的目标执行计划。
[0028]在一个实施例中,所述的基于机器学习的数据查询优化处理装置,还包括:查询改写单元,用于基于预设的改写规则对预先确定的结构化查询语句信息的优化类型对所述结构化查询语句信息中的目标查询语句进行优化改写;或者,基于预设的学习规则,采用机器学习和强化学习的方式对所述结构化查询语句信息进行优化选择,得到相应的查询改写结果。
[0029]在一个实施例中,所述的基于机器学习的数据查询优化处理方法,还包括:查询解析单元,用于采用对应数据库的查询解析工具中的SQL解析器对所述结构化查询语句信息进行解析,得到包含运算符表达式的查询解析树;利用所述查询优化器模型,根据预设的插拔原则对所述运算符表达式进行优化处理,得到相应的查询解析结果。
[0030]在一个实施例中,所述长短期记忆网络查询优化器模型用于,基于从所述历史执行计划进行特征提取得到的表示特征,对所述结构化本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于机器学习的数据查询优化处理方法,其特征在于,包括:获取输入的结构化查询语句信息;确定所述结构化查询语句信息对应的执行计划,并将所述执行计划对应的执行环境参数信息转化成相应的表示向量;将所述表示向量输入到基于长短期记忆网络的查询优化器模型中,得到所述查询优化器模型输出的代价信息,并基于所述代价信息确定相应的目标执行计划;其中,所述查询优化器模型是将历史执行计划作为样本数据、所述历史执行计划对应的实际代价作为目标值进行训练得到的。2.根据权利要求1所述的基于机器学习的数据查询优化处理方法,其特征在于,所述执行环境参数信息包含查询解析树、执行所述结构化查询语句信息的查询负载数据、执行环境的硬件特征信息以及软件特征信息。3.根据权利要求1所述的基于机器学习的数据查询优化处理方法,其特征在于,所述查询优化器模型,包括:基数估计模块,成本估计模块,连接顺序选择模块、具有机器学习和强化学习能力的学习型优化器模块;其中,所述基数估计模块,用于确定所述执行计划每个级别上处理的总行数,将所述总行数确定为所述执行计划的基数信息;所述成本估计模块,用于基于所述结构化查询语句信息对应的统计信息,确定相应的查询优化器中各个物理路径的成本信息;其中,统计信息包括:高频值统计信息,直方图统计信息,目标系数统计信息,类型高频值信息,数组类型直方图信息以及范围值类型统计信息;所述连接顺序选择模块,用于基于所述长短期记忆网络的强化学习能力进行连接顺序选择优化,得到相应的执行计划;所述学习型优化器模块,用于基于所述基数信息和所述成本信息,利用机器学习和强化学习的方式从所述执行计划中确定相应的目标执行计划。4.根据权利要求1所述的基于机器学习的数据查询优化处理方法,其特征在于,还包括:采用对应数据库的查询解析工具中的SQL解析器对所述结构化查询语句信息进行解析,得到包含运算符表达式的查询解析树;利用所述查询优化器模型,根据预设的插拔原则对所述运算符表达式进行优化处理,得到相应的查询解析结果。...

【专利技术属性】
技术研发人员:刘芳闫文赵洪松李方岩
申请(专利权)人:中国移动通信集团有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1