本發(fā)明涉及數(shù)據(jù)庫,尤其涉及一種數(shù)據(jù)生成方法、裝置、設(shè)備及介質(zhì)。
背景技術(shù):
1、隨著分布式數(shù)據(jù)庫功能的不斷增加完善,在對(duì)集中式數(shù)據(jù)庫以及歷史數(shù)據(jù)庫等的業(yè)務(wù)邏輯和結(jié)構(gòu)化查詢語言(structured?query?language,sql)語法的功能對(duì)齊中,測(cè)試場(chǎng)景不斷增加,簡單的人工測(cè)試很難將以上場(chǎng)景全部覆蓋,同時(shí)數(shù)據(jù)庫的空表很難發(fā)現(xiàn)問題,因此,在相應(yīng)測(cè)試過程中針對(duì)相應(yīng)數(shù)據(jù)庫對(duì)應(yīng)的測(cè)試場(chǎng)景需求進(jìn)行鋪底造數(shù)是必不可少的。
2、現(xiàn)有技術(shù)在針對(duì)數(shù)據(jù)庫sql語句進(jìn)行測(cè)試的過程中,通常是由人工對(duì)已生成的完整的sql語句進(jìn)行分析,并基于相應(yīng)分析結(jié)果進(jìn)行該sql語句對(duì)應(yīng)數(shù)據(jù)庫數(shù)據(jù)的構(gòu)造,從而使得在對(duì)sql語句,尤其是復(fù)雜sql語句進(jìn)行造數(shù)時(shí),相應(yīng)數(shù)據(jù)生成的效率和準(zhǔn)確度均較低,進(jìn)而對(duì)相應(yīng)sql語句執(zhí)行的命中率也存在消極影響。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明提供了一種數(shù)據(jù)生成方法、裝置、設(shè)備及介質(zhì),以提高相應(yīng)數(shù)據(jù)生成的效率和準(zhǔn)確度,保障相應(yīng)數(shù)據(jù)查詢語句執(zhí)行的命中率。
2、根據(jù)本發(fā)明的一方面,提供了一種數(shù)據(jù)生成方法,該方法包括:
3、獲取目標(biāo)數(shù)據(jù)庫對(duì)應(yīng)的數(shù)據(jù)庫語法樹、各數(shù)據(jù)庫支持函數(shù)以及各數(shù)據(jù)庫表信息;
4、根據(jù)預(yù)先配置的所述數(shù)據(jù)庫語法樹中各節(jié)點(diǎn)對(duì)應(yīng)的出現(xiàn)概率,構(gòu)建目標(biāo)數(shù)據(jù)查詢語句的框架,并根據(jù)所述各數(shù)據(jù)庫支持函數(shù)以及各數(shù)據(jù)庫表信息,確定該框架對(duì)應(yīng)各分層節(jié)點(diǎn)對(duì)應(yīng)的待填充信息;
5、根據(jù)所述各分層節(jié)點(diǎn)對(duì)應(yīng)的待填充信息,生成各分層節(jié)點(diǎn)對(duì)應(yīng)的候選命中數(shù)據(jù),并對(duì)該各分層節(jié)點(diǎn)對(duì)應(yīng)的候選命中數(shù)據(jù)進(jìn)行整合,得到所述目標(biāo)查詢語句對(duì)應(yīng)的目標(biāo)命中數(shù)據(jù)。
6、根據(jù)本發(fā)明的另一方面,提供了一種數(shù)據(jù)生成裝置,該裝置包括:
7、目標(biāo)數(shù)據(jù)庫信息獲取模塊,用于獲取目標(biāo)數(shù)據(jù)庫對(duì)應(yīng)的數(shù)據(jù)庫語法樹、各數(shù)據(jù)庫支持函數(shù)以及各數(shù)據(jù)庫表信息;
8、待填充信息確定模塊,用于根據(jù)預(yù)先配置的所述數(shù)據(jù)庫語法樹中各節(jié)點(diǎn)對(duì)應(yīng)的出現(xiàn)概率,構(gòu)建目標(biāo)數(shù)據(jù)查詢語句的框架,并根據(jù)所述各數(shù)據(jù)庫支持函數(shù)以及各數(shù)據(jù)庫表信息,確定該框架對(duì)應(yīng)各分層節(jié)點(diǎn)對(duì)應(yīng)的待填充信息;
9、目標(biāo)命中數(shù)據(jù)獲取模塊,用于根據(jù)所述各分層節(jié)點(diǎn)對(duì)應(yīng)的待填充信息,生成各分層節(jié)點(diǎn)對(duì)應(yīng)的候選命中數(shù)據(jù),并對(duì)該各分層節(jié)點(diǎn)對(duì)應(yīng)的候選命中數(shù)據(jù)進(jìn)行整合,得到所述目標(biāo)查詢語句對(duì)應(yīng)的目標(biāo)命中數(shù)據(jù)。
10、根據(jù)本發(fā)明的另一方面,提供了一種電子設(shè)備,該電子設(shè)備包括:
11、至少一個(gè)處理器;以及
12、與所述至少一個(gè)處理器通信連接的存儲(chǔ)器;其中,
13、所述存儲(chǔ)器存儲(chǔ)有可被所述至少一個(gè)處理器執(zhí)行的計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被所述至少一個(gè)處理器執(zhí)行,以使所述至少一個(gè)處理器能夠執(zhí)行本發(fā)明任一實(shí)施例所述的數(shù)據(jù)生成方法。
14、根據(jù)本發(fā)明的另一方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)指令,所述計(jì)算機(jī)指令用于使處理器執(zhí)行時(shí)實(shí)現(xiàn)本發(fā)明任一實(shí)施例所述的數(shù)據(jù)生成方法。
15、根據(jù)本發(fā)明的另一方面,提供一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序/指令,所述計(jì)算機(jī)程序/指令在被處理器執(zhí)行時(shí)實(shí)現(xiàn)如本發(fā)明任一實(shí)施例所述的數(shù)據(jù)生成方法。
16、本發(fā)明實(shí)施例的技術(shù)方案,通過獲取目標(biāo)數(shù)據(jù)庫對(duì)應(yīng)的數(shù)據(jù)庫語法樹、各數(shù)據(jù)庫支持函數(shù)以及各數(shù)據(jù)庫表信息,然后根據(jù)預(yù)先配置的數(shù)據(jù)庫語法樹中各節(jié)點(diǎn)對(duì)應(yīng)的出現(xiàn)概率,構(gòu)建目標(biāo)數(shù)據(jù)查詢語句的框架,并基于相應(yīng)各數(shù)據(jù)庫支持函數(shù)以及各數(shù)據(jù)庫表信息,確定該框架對(duì)應(yīng)各分層節(jié)點(diǎn)對(duì)應(yīng)的待填充信息,使得可基于該各分層節(jié)點(diǎn)對(duì)應(yīng)的待填充信息,生成該各分層節(jié)點(diǎn)對(duì)應(yīng)的候選命中數(shù)據(jù),并進(jìn)一步通過對(duì)該各候選命中數(shù)據(jù)進(jìn)行整合,得到相應(yīng)目標(biāo)命中數(shù)據(jù),從而能夠在生成相應(yīng)數(shù)據(jù)查詢語句的過程中,基于對(duì)各分層節(jié)點(diǎn)的信息填充,同步進(jìn)行相應(yīng)目標(biāo)命中數(shù)據(jù)的生成,避免了需要先生成完整的數(shù)據(jù)查詢語句再進(jìn)行相應(yīng)命中數(shù)據(jù)的構(gòu)造的情況,省去了對(duì)完整sql語句進(jìn)行分析的流程,進(jìn)而有助于提高相應(yīng)數(shù)據(jù)生成的效率和準(zhǔn)確度,保障相應(yīng)數(shù)據(jù)查詢語句執(zhí)行的命中率。
17、應(yīng)當(dāng)理解,本部分所描述的內(nèi)容并非旨在標(biāo)識(shí)本發(fā)明的實(shí)施例的關(guān)鍵或重要特征,也不用于限制本發(fā)明的范圍。本發(fā)明的其它特征將通過以下的說明書而變得容易理解。
1.一種數(shù)據(jù)生成方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,確定該框架對(duì)應(yīng)各分層節(jié)點(diǎn)對(duì)應(yīng)的待填充信息,包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,根據(jù)該待填充信息,構(gòu)造所述當(dāng)前分層節(jié)點(diǎn)對(duì)應(yīng)的候選命中數(shù)據(jù),包括:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,根據(jù)所述數(shù)據(jù)查詢邏輯、字段類型和初始取值范圍,確定待生成候選命中數(shù)據(jù)的數(shù)據(jù)生成范圍,包括:
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,根據(jù)預(yù)先配置的所述數(shù)據(jù)庫語法樹中各節(jié)點(diǎn)對(duì)應(yīng)的出現(xiàn)概率,構(gòu)建目標(biāo)數(shù)據(jù)查詢語句的框架,包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,在得到所述目標(biāo)查詢語句對(duì)應(yīng)的目標(biāo)命中數(shù)據(jù)之后,還包括:
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,在獲取目標(biāo)數(shù)據(jù)庫對(duì)應(yīng)的數(shù)據(jù)庫語法樹、各數(shù)據(jù)庫支持函數(shù)以及各數(shù)據(jù)庫表信息之前,還包括:
8.一種數(shù)據(jù)生成裝置,其特征在于,包括:
9.一種電子設(shè)備,其特征在于,所述電子設(shè)備包括:
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)指令,所述計(jì)算機(jī)指令用于使處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1-7中任一項(xiàng)所述的數(shù)據(jù)生成方法。