本申请涉及数据处理,具体涉及一种查询语句的处理方法、装置、存储介质及电子设备。
背景技术:
1、在数据库应用中,结构化查询语言(structured query language,sql)是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
2、目前,sql数据库的查询性能优化通常由人工手动进行。优化人员需要仔细分析和评估每个sql查询语句,尝试用不同的优化策略和参数配置来进行实验和测试,再从中选择最优的执行计划信息,以完成对sql数据库的查询性能优化。
3、然而,这种人工方式具有主观性,无法全面考虑所有可能的优化方案和复杂的数据库系统配置,容易导致sql数据库在不同的环境和应用场景中表现不佳。而且人工方式需要进行多次的实验和测试,人工成本高,效率低,还会造成资源的浪费。
技术实现思路
1、有鉴于此,本申请提供了一种查询语句的处理方法、装置、存储介质及电子设备,主要目的在于改善目前人工优化sql数据库查询性能的方式容易受到主观性影响导致优化结果不佳,且人工优化方式成本高,效率低,还会造成资源浪费的技术问题。
2、第一方面,本申请提供了一种查询语句的处理方法,包括:
3、对sql查询语句进行解析;
4、根据所述sql查询语句的解析结果,获取所述sql查询语句的初始执行计划信息;
5、基于所述初始执行计划信息,利用粒子群算法分析所述sql查询语句的执行计划的最优化参数;
6、依据所述最优化参数,确定所述sql查询语句最优的执行计划信息。
7、第二方面,本申请提供了一种查询语句的处理装置,包括:
8、解析模块,被配置为对sql查询语句进行解析;
9、获取模块,被配置为根据所述sql查询语句的解析结果,获取所述sql查询语句的初始执行计划信息;
10、分析模块,被配置为基于所述初始执行计划信息,利用粒子群算法分析所述sql查询语句的执行计划的最优化参数;
11、确定模块,被配置为依据所述最优化参数,确定所述sql查询语句最优的执行计划信息。
12、第三方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的方法。
13、第四方面,本申请提供了一种电子设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面所述的方法。
14、借由上述技术方案,本申请提供的一种查询语句的处理方法、装置、存储介质及电子设备,首先对sql查询语句进行解析;根据sql查询语句的解析结果,获取sql查询语句的初始执行计划信息;然后基于初始执行计划信息,利用粒子群算法分析sql查询语句的执行计划的最优化参数;再依据最优化参数,确定sql查询语句最优的执行计划信息。与目前现有技术相比,本申请通过解析sql查询语句,获取执行计划信息,再利用粒子群算法自动搜索和优化执行计划,提高了优化效率与sql数据库的查询性能,减少了人工优化的成本,有效的避免了资源浪费。
15、上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
1.一种查询语句的处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述初始执行计划信息,利用粒子群算法分析所述sql查询语句的执行计划的最优化参数,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于粒子的适应度值对所述粒子群中粒子的位置和速度进行迭代更新,得到所述粒子群的全局最优值,包括:
4.根据权利要求3所述的方法,其特征在于,所述通过所述sql查询语句对所述粒子生成的执行计划进行评估,得到每个粒子的适应度值,包括:
5.根据权利要求4所述的方法,其特征在于,所述依据所述适应度值,更新粒子的个体最优值和全局最优值,包括:
6.根据权利要求1所述的方法,其特征在于,所述对sql查询语句进行解析,包括:
7.根据权利要求6所述的方法,其特征在于,所述提取所述sql查询语句中的关键信息,包括:
8.一种查询语句的处理装置,其特征在于,包括:
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法。
10.一种电子设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法。