本申請涉及數(shù)據(jù)處理,具體涉及一種查詢語句的處理方法、裝置、存儲介質(zhì)及電子設(shè)備。
背景技術(shù):
1、在數(shù)據(jù)庫應(yīng)用中,結(jié)構(gòu)化查詢語言(structured?query?language,sql)是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng)。
2、目前,sql數(shù)據(jù)庫的查詢性能優(yōu)化通常由人工手動進行。優(yōu)化人員需要仔細(xì)分析和評估每個sql查詢語句,嘗試用不同的優(yōu)化策略和參數(shù)配置來進行實驗和測試,再從中選擇最優(yōu)的執(zhí)行計劃信息,以完成對sql數(shù)據(jù)庫的查詢性能優(yōu)化。
3、然而,這種人工方式具有主觀性,無法全面考慮所有可能的優(yōu)化方案和復(fù)雜的數(shù)據(jù)庫系統(tǒng)配置,容易導(dǎo)致sql數(shù)據(jù)庫在不同的環(huán)境和應(yīng)用場景中表現(xiàn)不佳。而且人工方式需要進行多次的實驗和測試,人工成本高,效率低,還會造成資源的浪費。
技術(shù)實現(xiàn)思路
1、有鑒于此,本申請?zhí)峁┝艘环N查詢語句的處理方法、裝置、存儲介質(zhì)及電子設(shè)備,主要目的在于改善目前人工優(yōu)化sql數(shù)據(jù)庫查詢性能的方式容易受到主觀性影響導(dǎo)致優(yōu)化結(jié)果不佳,且人工優(yōu)化方式成本高,效率低,還會造成資源浪費的技術(shù)問題。
2、第一方面,本申請?zhí)峁┝艘环N查詢語句的處理方法,包括:
3、對sql查詢語句進行解析;
4、根據(jù)所述sql查詢語句的解析結(jié)果,獲取所述sql查詢語句的初始執(zhí)行計劃信息;
5、基于所述初始執(zhí)行計劃信息,利用粒子群算法分析所述sql查詢語句的執(zhí)行計劃的最優(yōu)化參數(shù);
6、依據(jù)所述最優(yōu)化參數(shù),確定所述sql查詢語句最優(yōu)的執(zhí)行計劃信息。
7、第二方面,本申請?zhí)峁┝艘环N查詢語句的處理裝置,包括:
8、解析模塊,被配置為對sql查詢語句進行解析;
9、獲取模塊,被配置為根據(jù)所述sql查詢語句的解析結(jié)果,獲取所述sql查詢語句的初始執(zhí)行計劃信息;
10、分析模塊,被配置為基于所述初始執(zhí)行計劃信息,利用粒子群算法分析所述sql查詢語句的執(zhí)行計劃的最優(yōu)化參數(shù);
11、確定模塊,被配置為依據(jù)所述最優(yōu)化參數(shù),確定所述sql查詢語句最優(yōu)的執(zhí)行計劃信息。
12、第三方面,本申請?zhí)峁┝艘环N計算機可讀存儲介質(zhì),其上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)第一方面所述的方法。
13、第四方面,本申請?zhí)峁┝艘环N電子設(shè)備,包括存儲介質(zhì)、處理器及存儲在存儲介質(zhì)上并可在處理器上運行的計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)第一方面所述的方法。
14、借由上述技術(shù)方案,本申請?zhí)峁┑囊环N查詢語句的處理方法、裝置、存儲介質(zhì)及電子設(shè)備,首先對sql查詢語句進行解析;根據(jù)sql查詢語句的解析結(jié)果,獲取sql查詢語句的初始執(zhí)行計劃信息;然后基于初始執(zhí)行計劃信息,利用粒子群算法分析sql查詢語句的執(zhí)行計劃的最優(yōu)化參數(shù);再依據(jù)最優(yōu)化參數(shù),確定sql查詢語句最優(yōu)的執(zhí)行計劃信息。與目前現(xiàn)有技術(shù)相比,本申請通過解析sql查詢語句,獲取執(zhí)行計劃信息,再利用粒子群算法自動搜索和優(yōu)化執(zhí)行計劃,提高了優(yōu)化效率與sql數(shù)據(jù)庫的查詢性能,減少了人工優(yōu)化的成本,有效的避免了資源浪費。
15、上述說明僅是本申請技術(shù)方案的概述,為了能夠更清楚了解本申請的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本申請的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本申請的具體實施方式。
1.一種查詢語句的處理方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述初始執(zhí)行計劃信息,利用粒子群算法分析所述sql查詢語句的執(zhí)行計劃的最優(yōu)化參數(shù),包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述基于粒子的適應(yīng)度值對所述粒子群中粒子的位置和速度進行迭代更新,得到所述粒子群的全局最優(yōu)值,包括:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述通過所述sql查詢語句對所述粒子生成的執(zhí)行計劃進行評估,得到每個粒子的適應(yīng)度值,包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述依據(jù)所述適應(yīng)度值,更新粒子的個體最優(yōu)值和全局最優(yōu)值,包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對sql查詢語句進行解析,包括:
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述提取所述sql查詢語句中的關(guān)鍵信息,包括:
8.一種查詢語句的處理裝置,其特征在于,包括:
9.一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執(zhí)行時實現(xiàn)權(quán)利要求1至7中任一項所述的方法。
10.一種電子設(shè)備,包括存儲介質(zhì)、處理器及存儲在存儲介質(zhì)上并可在處理器上運行的計算機程序,其特征在于,所述處理器執(zhí)行所述計算機程序時實現(xiàn)權(quán)利要求1至7中任一項所述的方法。