本發(fā)明涉及數(shù)據(jù)查詢,特別是涉及一種數(shù)據(jù)表排序方法、裝置、電子設備及存儲介質。
背景技術:
1、為了便于對公司的業(yè)務數(shù)據(jù)進行管理,可以將業(yè)務數(shù)據(jù)存儲在業(yè)務數(shù)據(jù)表中。一張數(shù)據(jù)表往往代表的是一個文件目錄,該目錄下有多個數(shù)據(jù)文件,這些數(shù)據(jù)文件中存儲的是這張表的數(shù)據(jù)。
2、由于多個數(shù)據(jù)文件在不同文件中的存儲是亂序的,因此電子設備在根據(jù)業(yè)務人員的查詢指令對查詢業(yè)務數(shù)據(jù)表中的數(shù)據(jù)內(nèi)容進行查詢時,需要遍歷多個文件中的數(shù)據(jù)文件才能得到查詢結果,查詢速度不夠快,并且業(yè)務加速查詢的使用門檻對企業(yè)人員而言比較高,并且業(yè)務人員對于實現(xiàn)加速查詢的動力不強,比較被動。
技術實現(xiàn)思路
1、本發(fā)明實施例的目的在于提供一種數(shù)據(jù)表排序方法、裝置、電子設備及存儲介質,用以提高業(yè)務數(shù)據(jù)查詢速度。具體技術方案如下:
2、第一方面,本發(fā)明實施例提供了一種數(shù)據(jù)表排序方法,每個業(yè)務數(shù)據(jù)表包括存儲于多個分區(qū)的數(shù)據(jù)文件,所述業(yè)務數(shù)據(jù)表按列存儲數(shù)據(jù)內(nèi)容,所述方法包括:
3、獲取歷史查詢信息,并提取所述歷史查詢信息中的歷史查詢特征,其中,所述歷史查詢特征至少包括待查詢表格標識以及過濾條件;
4、根據(jù)所述歷史查詢特征包括的待查詢表格標識,從所述業(yè)務數(shù)據(jù)表中篩選得到候選業(yè)務數(shù)據(jù)表;
5、針對每個候選業(yè)務數(shù)據(jù)表,確定數(shù)據(jù)列中每種數(shù)據(jù)內(nèi)容在該數(shù)據(jù)列的分布權重,以及基于所述歷史查詢特征包括的過濾條件對該候選業(yè)務數(shù)據(jù)表中的數(shù)據(jù)列進行查詢的歷史頻率;
6、根據(jù)所述歷史頻率以及所述分布權重,確定該候選業(yè)務數(shù)據(jù)表中每個數(shù)據(jù)列的過濾權重;
7、將該候選業(yè)務數(shù)據(jù)表包括的所有數(shù)據(jù)文件中的數(shù)據(jù)內(nèi)容,按照所述數(shù)據(jù)列的過濾權重的大小進行排序,得到排序后的數(shù)據(jù)文件,以使在需要進行數(shù)據(jù)查詢時利用排序后的數(shù)據(jù)文件進行數(shù)據(jù)查詢得到查詢結果。
8、可選的,所述確定數(shù)據(jù)列中每種數(shù)據(jù)內(nèi)容在該數(shù)據(jù)列的分布權重的步驟,包括:
9、確定該候選業(yè)務數(shù)據(jù)表包括的數(shù)據(jù)文件中目標數(shù)據(jù)列包含的每種數(shù)據(jù)內(nèi)容的數(shù)量,其中,所述目標數(shù)據(jù)列為所述歷史查詢特征包括的過濾條件對應的數(shù)據(jù)列;
10、計算每種數(shù)據(jù)內(nèi)容的數(shù)量與所述目標數(shù)據(jù)列包含的數(shù)據(jù)內(nèi)容的總數(shù)量的比例,作為該種數(shù)據(jù)內(nèi)容在所述目標數(shù)據(jù)列中的分布權重。
11、可選的,所述根據(jù)所述歷史頻率以及所述分布權重,確定該候選業(yè)務數(shù)據(jù)表中每個數(shù)據(jù)列的過濾權重的步驟,包括:
12、根據(jù)所述每種數(shù)據(jù)內(nèi)容在該數(shù)據(jù)列的分布權重,確定該數(shù)據(jù)列中數(shù)據(jù)內(nèi)容的分布均勻程度;
13、針對每個數(shù)據(jù)列,根據(jù)該數(shù)據(jù)列對應的歷史頻率以及所述分布均勻程度,確定該數(shù)據(jù)列的過濾權重,其中,所述過濾權重的大小與所述歷史頻率以及所述分布均勻程度呈正相關關系。
14、可選的,所述根據(jù)該數(shù)據(jù)列對應的歷史頻率以及所述分布均勻程度,確定該數(shù)據(jù)列的過濾權重的步驟,包括:
15、按照以下公式計算該數(shù)據(jù)列的過濾權重:
16、s=r×(1-a);
17、其中,s為所述數(shù)據(jù)列的過濾權重,r為所述數(shù)據(jù)列對應的歷史頻率,a為所述分布權重,1-a為所述分布均勻程度。
18、可選的,所述確定數(shù)據(jù)列中每種數(shù)據(jù)內(nèi)容在該數(shù)據(jù)列的分布權重的步驟,包括:
19、在該候選業(yè)務數(shù)據(jù)表包括的數(shù)據(jù)列中,確定對應的歷史頻率最多的第一預設數(shù)量的數(shù)據(jù)列,作為候選數(shù)據(jù)列;
20、針對每個候選數(shù)據(jù)列,確定該候選數(shù)據(jù)列包含的每種數(shù)據(jù)內(nèi)容的數(shù)量;
21、計算每種數(shù)據(jù)內(nèi)容的數(shù)量與所述候選數(shù)據(jù)列包含的數(shù)據(jù)內(nèi)容的總數(shù)量的比例,作為該種數(shù)據(jù)內(nèi)容在候選數(shù)據(jù)列中的分布權重;
22、根據(jù)每種數(shù)據(jù)內(nèi)容在候選數(shù)據(jù)列中的分布權重,確定分布權重最高的第二預設數(shù)量個分布權重,作為每種數(shù)據(jù)內(nèi)容在該數(shù)據(jù)列的分布權重。
23、可選的,所述將該候選業(yè)務數(shù)據(jù)表包括的所有數(shù)據(jù)文件中的數(shù)據(jù)內(nèi)容,按照所述數(shù)據(jù)列的過濾權重的大小進行排序,得到排序后的數(shù)據(jù)文件的步驟,包括:
24、將該候選業(yè)務數(shù)據(jù)表包括的所有數(shù)據(jù)文件中的數(shù)據(jù)內(nèi)容,按照預設排序方式進行排序,其中,所述預設排序方式為所述候選業(yè)務數(shù)據(jù)表包括的過濾權重最高的候選數(shù)據(jù)列所包括的數(shù)據(jù)內(nèi)容的屬性確定。
25、可選的,所述方法還包括:
26、獲取待查詢信息,并提取所述待查詢信息中的查詢特征;
27、根據(jù)所述查詢特征,在業(yè)務數(shù)據(jù)表中,確定所述待查詢信息所指示的目標業(yè)務數(shù)據(jù)表,其中,所述業(yè)務數(shù)據(jù)表為根據(jù)所述數(shù)據(jù)表排序方法進行排序得到的;
28、在所述目標業(yè)務數(shù)據(jù)表中,基于所述查詢特征查詢所述待查詢信息所指示的數(shù)據(jù)內(nèi)容,得到查詢結果。
29、可選的,所述目標業(yè)務數(shù)據(jù)表包括存儲于多個分區(qū)的目標數(shù)據(jù)文件,所述查詢特征至少包括查詢表格標識以及過濾條件;
30、所述根據(jù)所述查詢特征,在業(yè)務數(shù)據(jù)表中,確定所述待查詢信息所指示的目標業(yè)務數(shù)據(jù)表的步驟,包括:
31、在業(yè)務數(shù)據(jù)表中,查找所述查詢表格標識所指示的目標業(yè)務數(shù)據(jù)表所包括的目標數(shù)據(jù)文件;
32、所述在所述目標業(yè)務數(shù)據(jù)表中,基于所述查詢特征查詢所述待查詢信息所指示的數(shù)據(jù)內(nèi)容,得到查詢結果的步驟,包括:
33、在所述目標數(shù)據(jù)文件中,根據(jù)所述過濾條件以及所述預設排序方式所表征的所述過濾條件對應的順序,確定待查詢目標數(shù)據(jù)文件;
34、從所述待查詢目標數(shù)據(jù)文件中,查詢所述過濾條件所對應的數(shù)據(jù)內(nèi)容,得到查詢結果。
35、第二方面,本發(fā)明實施例提供了一種數(shù)據(jù)表排序裝置,每個業(yè)務數(shù)據(jù)表包括存儲于多個分區(qū)的數(shù)據(jù)文件,所述業(yè)務數(shù)據(jù)表按列存儲數(shù)據(jù)內(nèi)容,所述裝置包括:
36、歷史查詢特征提取模塊,用于獲取歷史查詢信息,并提取所述歷史查詢信息中的歷史查詢特征,其中,所述歷史查詢特征至少包括待查詢表格標識以及過濾條件;
37、業(yè)務數(shù)據(jù)表篩選模塊,用于根據(jù)所述歷史查詢特征包括的待查詢表格標識,從所述業(yè)務數(shù)據(jù)表中篩選得到候選業(yè)務數(shù)據(jù)表;
38、數(shù)據(jù)信息確定模塊,用于針對每個候選業(yè)務數(shù)據(jù)表,確定數(shù)據(jù)列中每種數(shù)據(jù)內(nèi)容在該數(shù)據(jù)列的分布權重,以及基于所述歷史查詢特征包括的過濾條件對該候選業(yè)務數(shù)據(jù)表中的數(shù)據(jù)列進行查詢的歷史頻率;
39、過濾權重確定模塊,用于根據(jù)所述歷史頻率以及所述分布權重,確定該候選業(yè)務數(shù)據(jù)表中每個數(shù)據(jù)列的過濾權重;
40、數(shù)據(jù)文件排序模塊,用于將該候選業(yè)務數(shù)據(jù)表包括的所有數(shù)據(jù)文件中的數(shù)據(jù)內(nèi)容,按照所述數(shù)據(jù)列的過濾權重的大小進行排序,得到排序后的數(shù)據(jù)文件,以使在需要進行數(shù)據(jù)查詢時利用排序后的數(shù)據(jù)文件進行數(shù)據(jù)查詢得到查詢結果。
41、第三方面,本發(fā)明實施例提供了一種電子設備,包括處理器、通信接口、存儲器和通信總線,其中,處理器,通信接口,存儲器通過通信總線完成相互間的通信;
42、存儲器,用于存放計算機程序;
43、處理器,用于執(zhí)行存儲器上所存放的程序時,實現(xiàn)上述第一方面任一所述的方法步驟。
44、第四方面,本發(fā)明實施例提供了一種計算機可讀存儲介質,所述計算機可讀存儲介質內(nèi)存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)上述第一方面任一所述的方法步驟。
45、本發(fā)明實施例有益效果:
46、本發(fā)明實施例提供的方案中,電子設備獲取歷史查詢信息,并提取所述歷史查詢信息中的歷史查詢特征,其中,所述歷史查詢特征至少包括待查詢表格標識以及過濾條件,然后根據(jù)所述歷史查詢特征包括的待查詢表格標識,從所述業(yè)務數(shù)據(jù)表中篩選得到候選業(yè)務數(shù)據(jù)表。針對每個業(yè)務候選數(shù)據(jù)表,確定數(shù)據(jù)列中每種數(shù)據(jù)內(nèi)容在該數(shù)據(jù)列的分布權重,以及對該候選業(yè)務數(shù)據(jù)表中的數(shù)據(jù)列進行查詢的歷史頻率。進而再根據(jù)歷史頻率和分布權重確定該候選業(yè)務數(shù)據(jù)表中每個數(shù)據(jù)列的過濾權重,并按照查詢最大的數(shù)據(jù)列對候選業(yè)務數(shù)據(jù)表包括的數(shù)據(jù)文件中的數(shù)據(jù)內(nèi)容進行排序,得到排序后的數(shù)據(jù)文件,以使得利用排序后的數(shù)據(jù)文件進行數(shù)據(jù)查詢的效率得以提高。
47、由于上述過濾權重是根據(jù)業(yè)務人員對業(yè)務數(shù)據(jù)表中該數(shù)據(jù)列的查詢頻率,以及每種數(shù)據(jù)內(nèi)容在該數(shù)據(jù)列中的分布情況兩種因素所確定出來的,因此上述排序后的數(shù)據(jù)文件更符合業(yè)務人員在該業(yè)務數(shù)據(jù)表中進行查詢的傾向,在排序后的數(shù)據(jù)文件中進行數(shù)據(jù)查詢,提高了業(yè)務人員的查詢效率,并且排序后的業(yè)務數(shù)據(jù)表中的相同的數(shù)據(jù)內(nèi)容是分布在一起的,便于對業(yè)務數(shù)據(jù)表進行壓縮,縮小了業(yè)務數(shù)據(jù)表的存儲空間。當然,實施本發(fā)明的任一產(chǎn)品或方法并不一定需要同時達到以上所述的所有優(yōu)點。