本技術(shù)涉及數(shù)據(jù)存儲(chǔ),應(yīng)用于金融業(yè)務(wù)大數(shù)據(jù)存儲(chǔ)場(chǎng)景中,尤其涉及一種數(shù)據(jù)存儲(chǔ)方法、裝置、設(shè)備及其存儲(chǔ)介質(zhì)。
背景技術(shù):
1、隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,越來(lái)越多的金融業(yè)務(wù)使用到了網(wǎng)上辦理方式,而網(wǎng)上辦理方式的普及,也使得金融公司有限數(shù)量的業(yè)務(wù)員,需要面向更多不特定的業(yè)務(wù)對(duì)象,這樣對(duì)于公司的業(yè)務(wù)增長(zhǎng)存在較大的好處,但是,也會(huì)帶來(lái)較多的業(yè)務(wù)數(shù)據(jù)處理問(wèn)題,例如:業(yè)務(wù)存儲(chǔ)數(shù)據(jù)會(huì)大量的增加。
2、目前,為了應(yīng)對(duì)業(yè)務(wù)存儲(chǔ)數(shù)據(jù)會(huì)大量的增加,一部分金融公司采用云存儲(chǔ)方式,將數(shù)據(jù)管理和維護(hù)委托給第三方云平臺(tái),但是,這種方式不利于數(shù)據(jù)安全性,而也有一部分金融公司采用了自構(gòu)建數(shù)據(jù)庫(kù)方式進(jìn)行自主管理和維護(hù),這樣雖然對(duì)數(shù)據(jù)的安全性存在較高的保障,但是,往往會(huì)由于數(shù)據(jù)的繁多,導(dǎo)致了自構(gòu)建的數(shù)據(jù)庫(kù)在存儲(chǔ)模式上不夠科學(xué)化和合理化,造成了不利于數(shù)據(jù)維護(hù)人員進(jìn)行管理維護(hù)的問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)實(shí)施例的目的在于提出一種數(shù)據(jù)存儲(chǔ)方法、裝置、設(shè)備及其存儲(chǔ)介質(zhì),以解決現(xiàn)有自構(gòu)建的數(shù)據(jù)庫(kù)在存儲(chǔ)模式上不夠科學(xué)化和合理化,造成了不利于數(shù)據(jù)維護(hù)人員進(jìn)行管理維護(hù)的問(wèn)題。
2、為了解決上述技術(shù)問(wèn)題,本技術(shù)實(shí)施例提供數(shù)據(jù)存儲(chǔ)方法,采用了如下所述的技術(shù)方案:
3、一種數(shù)據(jù)存儲(chǔ)方法,包括下述步驟:
4、獲取目標(biāo)存儲(chǔ)數(shù)據(jù);
5、通過(guò)查詢歷史表單對(duì)所述目標(biāo)存儲(chǔ)數(shù)據(jù)中所包含的所有待存儲(chǔ)內(nèi)容進(jìn)行存儲(chǔ)類別驗(yàn)證,其中,所述進(jìn)行存儲(chǔ)類別驗(yàn)證包括驗(yàn)證當(dāng)前待存儲(chǔ)內(nèi)容為歷史存量數(shù)據(jù)或者為新增增量數(shù)據(jù);
6、若所述目標(biāo)存儲(chǔ)數(shù)據(jù)中所包含的當(dāng)前待存儲(chǔ)內(nèi)容能夠在所述歷史表單中被查詢到,則所述當(dāng)前待存儲(chǔ)內(nèi)容為歷史存量數(shù)據(jù),根據(jù)預(yù)設(shè)的識(shí)別策略,判斷所述當(dāng)前待存儲(chǔ)內(nèi)容是否為熱點(diǎn)數(shù)據(jù);
7、若所述當(dāng)前待存儲(chǔ)內(nèi)容為熱點(diǎn)數(shù)據(jù),則采用數(shù)據(jù)遷移方式從所述歷史表單中將所述當(dāng)前待存儲(chǔ)內(nèi)容寫(xiě)入到預(yù)設(shè)的新分片表中,并在所述歷史表單中刪除所述當(dāng)前待存儲(chǔ)內(nèi)容;
8、若所述目標(biāo)存儲(chǔ)數(shù)據(jù)中所包含的當(dāng)前待存儲(chǔ)內(nèi)容無(wú)法在所述歷史表單中被查詢到,則所述當(dāng)前待存儲(chǔ)內(nèi)容為新增增量數(shù)據(jù),將所述當(dāng)前待存儲(chǔ)內(nèi)容寫(xiě)入到預(yù)設(shè)的新分片表和所述歷史表單中。
9、進(jìn)一步的,在執(zhí)行所述通過(guò)查詢歷史表單對(duì)所述目標(biāo)存儲(chǔ)數(shù)據(jù)中所包含的所有待存儲(chǔ)內(nèi)容進(jìn)行存儲(chǔ)類別驗(yàn)證的步驟之前,所述方法還包括:
10、根據(jù)預(yù)設(shè)的第一參數(shù)、第二參數(shù)和預(yù)設(shè)的分片條件,生成用于數(shù)據(jù)存儲(chǔ)的新分片表,其中,所述第一參數(shù)包括預(yù)估總存儲(chǔ)數(shù)據(jù)量,所述第二參數(shù)包括單表最大存儲(chǔ)數(shù)據(jù)量,
11、所述預(yù)設(shè)的分片條件包括:
12、x∈2n,且x為距離最小的2的n次冪數(shù),
13、式中,x表示分片數(shù)量,n為正整數(shù),m為所述第一參數(shù),n為所述第二參數(shù),表示對(duì)第一參數(shù)與第二參數(shù)的比值進(jìn)行加1取整;
14、獲取所述新分片表中所有分片的存儲(chǔ)地址信息。
15、進(jìn)一步的,在執(zhí)行所述生成用于數(shù)據(jù)存儲(chǔ)的新分片表的步驟之后,所述方法還包括:
16、采用二進(jìn)制法對(duì)所述新分片表中每個(gè)分片進(jìn)行區(qū)別編號(hào),其中,所述區(qū)別編號(hào)對(duì)應(yīng)的十進(jìn)制數(shù)為區(qū)間[0,x)中的整數(shù)值,x表示分片數(shù)量。
17、進(jìn)一步的,所述通過(guò)查詢歷史表單對(duì)所述目標(biāo)存儲(chǔ)數(shù)據(jù)中所包含的所有待存儲(chǔ)內(nèi)容進(jìn)行存儲(chǔ)類別驗(yàn)證的步驟,具體包括:
18、依次從所述目標(biāo)存儲(chǔ)數(shù)據(jù)中所包含的所有待存儲(chǔ)內(nèi)容中選擇不同待存儲(chǔ)內(nèi)容作為當(dāng)前存儲(chǔ)內(nèi)容;
19、將所述當(dāng)前存儲(chǔ)內(nèi)容作為索引項(xiàng)輸入到預(yù)設(shè)的搜索引擎e?l?ast?icsearch中,通過(guò)所述搜索引擎e?l?ast?icsearch的查詢接口從所述歷史表單中進(jìn)行當(dāng)前存儲(chǔ)內(nèi)容查詢;
20、若當(dāng)前存儲(chǔ)內(nèi)容在所述歷史表單中可以被查詢到,則采用預(yù)設(shè)的第一區(qū)別標(biāo)識(shí)標(biāo)記所述當(dāng)前存儲(chǔ)內(nèi)容,并通過(guò)所述搜索引擎e?l?ast?icsearch的輸出接口輸出所述第一區(qū)別標(biāo)識(shí)和所述當(dāng)前存儲(chǔ)內(nèi)容所構(gòu)成的成對(duì)數(shù)據(jù);
21、若當(dāng)前存儲(chǔ)內(nèi)容在所述歷史表單中無(wú)法被查詢到,則采用預(yù)設(shè)的第二區(qū)別標(biāo)識(shí)標(biāo)記所述當(dāng)前存儲(chǔ)內(nèi)容,并向目標(biāo)提示端發(fā)送同時(shí)包含所述第二區(qū)別標(biāo)識(shí)和所述當(dāng)前存儲(chǔ)內(nèi)容的提示內(nèi)容;
22、基于所述當(dāng)前存儲(chǔ)內(nèi)容對(duì)應(yīng)的區(qū)別標(biāo)識(shí),驗(yàn)證所述當(dāng)前存儲(chǔ)內(nèi)容的存儲(chǔ)類別。
23、進(jìn)一步的,所述基于所述當(dāng)前存儲(chǔ)內(nèi)容對(duì)應(yīng)的區(qū)別標(biāo)識(shí),驗(yàn)證所述當(dāng)前存儲(chǔ)內(nèi)容的存儲(chǔ)類別的步驟,具體包括:
24、若所述當(dāng)前存儲(chǔ)內(nèi)容對(duì)應(yīng)的區(qū)別標(biāo)識(shí)為第一區(qū)別標(biāo)識(shí),則所述當(dāng)前存儲(chǔ)內(nèi)容為歷史存量數(shù)據(jù);
25、若所述當(dāng)前存儲(chǔ)內(nèi)容對(duì)應(yīng)的區(qū)別標(biāo)識(shí)為第二區(qū)別標(biāo)識(shí),則所述當(dāng)前存儲(chǔ)內(nèi)容為新增增量數(shù)據(jù)。
26、進(jìn)一步的,所述將所述當(dāng)前待存儲(chǔ)內(nèi)容寫(xiě)入到預(yù)設(shè)的新分片表的步驟,具體包括:
27、通過(guò)對(duì)所述目標(biāo)存儲(chǔ)數(shù)據(jù)進(jìn)行解析,識(shí)別所述當(dāng)前待存儲(chǔ)內(nèi)容對(duì)應(yīng)的唯一用戶編號(hào),其中,用戶編號(hào)為隨機(jī)整數(shù);
28、根據(jù)預(yù)設(shè)的算法公式:
29、
30、進(jìn)行取余計(jì)算,并對(duì)余數(shù)進(jìn)行二進(jìn)制轉(zhuǎn)換,獲得二進(jìn)制轉(zhuǎn)換結(jié)果,其中,i表示用戶編號(hào),x表示分片數(shù)量,y表示用戶編號(hào)與分片數(shù)量的比值;
31、將所述二進(jìn)制轉(zhuǎn)換結(jié)果與所述新分片表中每個(gè)分片的區(qū)別編號(hào)進(jìn)行對(duì)比,選擇出區(qū)別編號(hào)與所述二進(jìn)制轉(zhuǎn)換結(jié)果一致的分片作為所述當(dāng)前待存儲(chǔ)內(nèi)容的存儲(chǔ)分片;
32、識(shí)別所述當(dāng)前待存儲(chǔ)內(nèi)容的存儲(chǔ)分片對(duì)應(yīng)的存儲(chǔ)地址信息;
33、基于所述當(dāng)前待存儲(chǔ)內(nèi)容的存儲(chǔ)分片對(duì)應(yīng)的存儲(chǔ)地址信息存儲(chǔ)所述當(dāng)前待存儲(chǔ)內(nèi)容。
34、進(jìn)一步的,所述的方法還包括:
35、采用預(yù)設(shè)的調(diào)用監(jiān)測(cè)組件,持續(xù)監(jiān)測(cè)所述歷史表單中所有歷史存儲(chǔ)內(nèi)容分別被調(diào)用次數(shù);
36、若目標(biāo)歷史存儲(chǔ)內(nèi)容對(duì)應(yīng)的被調(diào)用次數(shù)達(dá)到了所述預(yù)設(shè)的熱點(diǎn)次數(shù)閾值,則采用數(shù)據(jù)遷移方式從所述歷史表單中將所述目標(biāo)歷史存儲(chǔ)內(nèi)容寫(xiě)入到預(yù)設(shè)的新分片表中,并在所述歷史表單中刪除所述目標(biāo)歷史存儲(chǔ)內(nèi)容。
37、為了解決上述技術(shù)問(wèn)題,本技術(shù)實(shí)施例還提供數(shù)據(jù)存儲(chǔ)裝置,采用了如下所述的技術(shù)方案:
38、一種數(shù)據(jù)存儲(chǔ)裝置,包括:
39、目標(biāo)存儲(chǔ)數(shù)據(jù)獲取模塊,用于獲取目標(biāo)存儲(chǔ)數(shù)據(jù);
40、存儲(chǔ)類別驗(yàn)證查詢模塊,用于通過(guò)查詢歷史表單對(duì)所述目標(biāo)存儲(chǔ)數(shù)據(jù)中所包含的所有待存儲(chǔ)內(nèi)容進(jìn)行存儲(chǔ)類別驗(yàn)證,其中,所述進(jìn)行存儲(chǔ)類別驗(yàn)證包括驗(yàn)證當(dāng)前待存儲(chǔ)內(nèi)容為歷史存量數(shù)據(jù)或者為新增增量數(shù)據(jù);
41、熱點(diǎn)數(shù)據(jù)判斷模塊,用于若所述目標(biāo)存儲(chǔ)數(shù)據(jù)中所包含的當(dāng)前待存儲(chǔ)內(nèi)容能夠在所述歷史表單中被查詢到,則所述當(dāng)前待存儲(chǔ)內(nèi)容為歷史存量數(shù)據(jù),根據(jù)預(yù)設(shè)的識(shí)別策略,判斷所述當(dāng)前待存儲(chǔ)內(nèi)容是否為熱點(diǎn)數(shù)據(jù);
42、存儲(chǔ)內(nèi)容第一寫(xiě)入模塊,用于若所述當(dāng)前待存儲(chǔ)內(nèi)容為熱點(diǎn)數(shù)據(jù),則采用數(shù)據(jù)遷移方式從所述歷史表單中將所述當(dāng)前待存儲(chǔ)內(nèi)容寫(xiě)入到預(yù)設(shè)的新分片表中,并在所述歷史表單中刪除所述當(dāng)前待存儲(chǔ)內(nèi)容;
43、存儲(chǔ)內(nèi)容第二寫(xiě)入模塊,用于若所述目標(biāo)存儲(chǔ)數(shù)據(jù)中所包含的當(dāng)前待存儲(chǔ)內(nèi)容無(wú)法在所述歷史表單中被查詢到,則所述當(dāng)前待存儲(chǔ)內(nèi)容為新增增量數(shù)據(jù),將所述當(dāng)前待存儲(chǔ)內(nèi)容寫(xiě)入到預(yù)設(shè)的新分片表和所述歷史表單中。
44、為了解決上述技術(shù)問(wèn)題,本技術(shù)實(shí)施例還提供一種計(jì)算機(jī)設(shè)備,采用了如下所述的技術(shù)方案:
45、一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器和處理器,所述存儲(chǔ)器中存儲(chǔ)有計(jì)算機(jī)可讀指令,所述處理器執(zhí)行所述計(jì)算機(jī)可讀指令時(shí)實(shí)現(xiàn)上述所述的數(shù)據(jù)存儲(chǔ)方法的步驟。
46、為了解決上述技術(shù)問(wèn)題,本技術(shù)實(shí)施例還提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),采用了如下所述的技術(shù)方案:
47、一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)可讀指令,所述計(jì)算機(jī)可讀指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上述所述的數(shù)據(jù)存儲(chǔ)方法的步驟。
48、與現(xiàn)有技術(shù)相比,本技術(shù)實(shí)施例主要有以下有益效果:
49、本技術(shù)實(shí)施例所述數(shù)據(jù)存儲(chǔ)方法,通過(guò)獲取目標(biāo)存儲(chǔ)數(shù)據(jù);通過(guò)查詢歷史表單對(duì)所述目標(biāo)存儲(chǔ)數(shù)據(jù)中所包含的所有待存儲(chǔ)內(nèi)容進(jìn)行存儲(chǔ)類別驗(yàn)證;對(duì)新增增量數(shù)據(jù)同時(shí)寫(xiě)入到預(yù)設(shè)的新分片表和所述歷史表單中、對(duì)歷史存量數(shù)據(jù)中的熱點(diǎn)數(shù)據(jù)采用數(shù)據(jù)遷移方式從所述歷史表單中將所述當(dāng)前待存儲(chǔ)內(nèi)容寫(xiě)入到預(yù)設(shè)的新分片表中,并在所述歷史表單中刪除所述當(dāng)前待存儲(chǔ)內(nèi)容,既避免了歷史表單中數(shù)據(jù)量過(guò)多,也能夠?qū)狳c(diǎn)數(shù)據(jù)和非熱點(diǎn)數(shù)據(jù)分表存儲(chǔ),便于數(shù)據(jù)維護(hù)人員進(jìn)行數(shù)據(jù)維護(hù)。尤其是在存儲(chǔ)數(shù)據(jù)較多的金融業(yè)務(wù)領(lǐng)域,采用本技術(shù)所述的數(shù)據(jù)存儲(chǔ)方法,使得數(shù)據(jù)存儲(chǔ)模式更加科學(xué)化和合理化。