本申請(qǐng)涉及數(shù)據(jù)處理,特別是涉及一種數(shù)據(jù)同步方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)。
背景技術(shù):
1、隨著信息技術(shù)的飛速發(fā)展,各個(gè)行業(yè)的數(shù)據(jù)量呈爆發(fā)式增長(zhǎng)。企業(yè)和組織面臨著海量的結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)。這些數(shù)據(jù)中蘊(yùn)含著豐富的信息,但如何有效地提取、管理和利用這些信息成為了一個(gè)巨大的挑戰(zhàn)。特征平臺(tái)應(yīng)運(yùn)而生,它能夠幫助人們從龐大的數(shù)據(jù)海洋中挖掘出有價(jià)值的特征,為后續(xù)的數(shù)據(jù)分析和決策提供支持。
2、特征按其時(shí)效性通??梢员粍澐譃殡x線和實(shí)時(shí)等類型,而離線特征的從加工到提供查詢的過程中,如何解決特征從離線存儲(chǔ)到線上存儲(chǔ)的同步,便是各行各業(yè)都要面對(duì)的關(guān)鍵問題。
3、目前,傳統(tǒng)的數(shù)據(jù)同步方案,一般會(huì)將整表的數(shù)據(jù)全量同步到線上存儲(chǔ)系統(tǒng)來提供服務(wù),但由于離線特征本身特性,其數(shù)據(jù)每天的變更較小,但是數(shù)據(jù)規(guī)模卻非常龐大,因此,傳統(tǒng)的同步方案存在著資源浪費(fèi)和同步時(shí)效差的問題。
技術(shù)實(shí)現(xiàn)思路
1、基于此,有必要針對(duì)上述技術(shù)問題,提供一種能夠提高數(shù)據(jù)同步效率的數(shù)據(jù)同步方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)。
2、一種數(shù)據(jù)同步方法,包括:
3、從第一數(shù)據(jù)庫(kù)獲取當(dāng)前數(shù)據(jù)分片以及上一數(shù)據(jù)分片,數(shù)據(jù)分片為根據(jù)時(shí)間對(duì)數(shù)據(jù)進(jìn)行切分得到的;
4、根據(jù)當(dāng)前數(shù)據(jù)分片與上一數(shù)據(jù)分片得到全量數(shù)據(jù)集,全量數(shù)據(jù)集中包括待變更數(shù)據(jù)的標(biāo)記信息;
5、根據(jù)標(biāo)記信息對(duì)全量數(shù)據(jù)集進(jìn)行解析,得到待變更數(shù)據(jù)以及對(duì)應(yīng)的變更操作;
6、根據(jù)待變更數(shù)據(jù)和變更操作對(duì)第二數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行數(shù)據(jù)同步。
7、在其中一個(gè)實(shí)施例中,根據(jù)當(dāng)前數(shù)據(jù)分片與上一數(shù)據(jù)分片得到全量數(shù)據(jù)集,包括:
8、對(duì)當(dāng)前數(shù)據(jù)分片與上一數(shù)據(jù)分片進(jìn)行全連接,得到全量數(shù)據(jù)集。
9、在其中一個(gè)實(shí)施例中,數(shù)據(jù)同步方法還包括:
10、分別對(duì)當(dāng)前數(shù)據(jù)分片與上一數(shù)據(jù)分片進(jìn)行kv轉(zhuǎn)換,得到列存儲(chǔ)結(jié)構(gòu)的數(shù)據(jù)表;
11、根據(jù)當(dāng)前數(shù)據(jù)分片與上一數(shù)據(jù)分片得到全量數(shù)據(jù)集,包括:
12、根據(jù)列存儲(chǔ)結(jié)構(gòu)的數(shù)據(jù)表得到全量數(shù)據(jù)集,全量數(shù)據(jù)集為列存儲(chǔ)結(jié)構(gòu)。
13、在其中一個(gè)實(shí)施例中,當(dāng)前數(shù)據(jù)分片以及上一數(shù)據(jù)分片均包括多條第一數(shù)據(jù)記錄,各第一數(shù)據(jù)記錄中包括多個(gè)關(guān)鍵字的取值,全量數(shù)據(jù)集中包括與各關(guān)鍵字對(duì)應(yīng)的第二數(shù)據(jù)記錄,第二數(shù)據(jù)記錄中包括關(guān)鍵字的原取值以及新值,原取值為關(guān)鍵字在上一數(shù)據(jù)分片中的取值,新值為關(guān)鍵字在當(dāng)前數(shù)據(jù)分片中的取值。
14、在其中一個(gè)實(shí)施例中,根據(jù)標(biāo)記信息對(duì)全量數(shù)據(jù)集進(jìn)行解析,得到待變更數(shù)據(jù)以及對(duì)應(yīng)的變更操作,包括:
15、根據(jù)標(biāo)記信息確定待變更數(shù)據(jù)所在的第二數(shù)據(jù)記錄;
16、獲取待變更數(shù)據(jù)所在的第二數(shù)據(jù)記錄中的原取值以及新值;
17、當(dāng)待變更數(shù)據(jù)所在第二數(shù)據(jù)記錄中的原取值以及新值均有值且取值不同時(shí),確定變更操作為數(shù)據(jù)修改;
18、當(dāng)待變更數(shù)據(jù)所在第二數(shù)據(jù)記錄中的原取值有值,新值為空值時(shí),確定變更操作為數(shù)據(jù)刪除;
19、當(dāng)待變更數(shù)據(jù)所在第二數(shù)據(jù)記錄中的原取值為空值,新值為有值時(shí),確定變更操作為數(shù)據(jù)插入,以進(jìn)行增量數(shù)據(jù)表的解析。
20、在其中一個(gè)實(shí)施例中,根據(jù)待變更數(shù)據(jù)和變更操作對(duì)第二數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行數(shù)據(jù)同步,包括:
21、當(dāng)變更操作為數(shù)據(jù)修改時(shí),將待變更數(shù)據(jù)從原取值修改為新值;
22、當(dāng)變更操作為數(shù)據(jù)刪除時(shí),將待變更數(shù)據(jù)從第二數(shù)據(jù)庫(kù)中刪除;
23、當(dāng)變更操作為數(shù)據(jù)插入時(shí),將待變更數(shù)據(jù)插入信息第二數(shù)據(jù)庫(kù)中。
24、在其中一個(gè)實(shí)施例中,第一數(shù)據(jù)庫(kù)為離線數(shù)倉(cāng),數(shù)據(jù)同步方法還包括:
25、獲取原始數(shù)據(jù),并對(duì)原始數(shù)據(jù)進(jìn)行特征轉(zhuǎn)換、合成以及存入離線數(shù)倉(cāng);
26、對(duì)離線數(shù)倉(cāng)中的數(shù)據(jù)按照預(yù)設(shè)時(shí)間段進(jìn)行數(shù)據(jù)切分,得到數(shù)據(jù)分片。
27、一種數(shù)據(jù)同步裝置,包括:
28、獲取模塊,用于從第一數(shù)據(jù)庫(kù)獲取當(dāng)前數(shù)據(jù)分片以及上一數(shù)據(jù)分片,數(shù)據(jù)分片為根據(jù)時(shí)間對(duì)數(shù)據(jù)進(jìn)行切分得到的;
29、標(biāo)記模塊,用于根據(jù)當(dāng)前數(shù)據(jù)分片與上一數(shù)據(jù)分片得到全量數(shù)據(jù)集,全量數(shù)據(jù)集中包括待變更數(shù)據(jù)的標(biāo)記信息;
30、解析模塊,用于根據(jù)標(biāo)記信息對(duì)全量數(shù)據(jù)集進(jìn)行解析,得到待變更數(shù)據(jù)以及對(duì)應(yīng)的變更操作;
31、同步模塊,用于根據(jù)待變更數(shù)據(jù)和變更操作對(duì)第二數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行數(shù)據(jù)同步。
32、一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,處理器執(zhí)行計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)以下步驟:
33、從第一數(shù)據(jù)庫(kù)獲取當(dāng)前數(shù)據(jù)分片以及上一數(shù)據(jù)分片,數(shù)據(jù)分片為根據(jù)時(shí)間對(duì)數(shù)據(jù)進(jìn)行切分得到的;
34、根據(jù)當(dāng)前數(shù)據(jù)分片與上一數(shù)據(jù)分片得到全量數(shù)據(jù)集,全量數(shù)據(jù)集中包括待變更數(shù)據(jù)的標(biāo)記信息;
35、根據(jù)標(biāo)記信息對(duì)全量數(shù)據(jù)集進(jìn)行解析,得到待變更數(shù)據(jù)以及對(duì)應(yīng)的變更操作;
36、根據(jù)待變更數(shù)據(jù)和變更操作對(duì)第二數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行數(shù)據(jù)同步。
37、一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)以下步驟:
38、從第一數(shù)據(jù)庫(kù)獲取當(dāng)前數(shù)據(jù)分片以及上一數(shù)據(jù)分片,數(shù)據(jù)分片為根據(jù)時(shí)間對(duì)數(shù)據(jù)進(jìn)行切分得到的;
39、根據(jù)當(dāng)前數(shù)據(jù)分片與上一數(shù)據(jù)分片得到全量數(shù)據(jù)集,全量數(shù)據(jù)集中包括待變更數(shù)據(jù)的標(biāo)記信息;
40、根據(jù)標(biāo)記信息對(duì)全量數(shù)據(jù)集進(jìn)行解析,得到待變更數(shù)據(jù)以及對(duì)應(yīng)的變更操作;
41、根據(jù)待變更數(shù)據(jù)和變更操作對(duì)第二數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行數(shù)據(jù)同步。
42、上述數(shù)據(jù)同步方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì),從第一數(shù)據(jù)庫(kù)獲取當(dāng)前數(shù)據(jù)分片以及上一數(shù)據(jù)分片,數(shù)據(jù)分片為根據(jù)時(shí)間對(duì)數(shù)據(jù)進(jìn)行切分得到的,根據(jù)當(dāng)前數(shù)據(jù)分片與上一數(shù)據(jù)分片得到全量數(shù)據(jù)集,全量數(shù)據(jù)集中包括待變更數(shù)據(jù)的標(biāo)記信息,根據(jù)標(biāo)記信息對(duì)全量數(shù)據(jù)集進(jìn)行解析,得到待變更數(shù)據(jù)以及對(duì)應(yīng)的變更操作,根據(jù)待變更數(shù)據(jù)和變更操作對(duì)第二數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行數(shù)據(jù)同步。本申請(qǐng)可以根據(jù)當(dāng)前數(shù)據(jù)分片以及上一數(shù)據(jù)分片確定全量數(shù)據(jù)集,且全量數(shù)據(jù)集中對(duì)待變更數(shù)據(jù)進(jìn)行了標(biāo)記以及對(duì)變更操作進(jìn)行了記錄,使得可以根據(jù)增量數(shù)據(jù)表解析出對(duì)應(yīng)的待變更數(shù)據(jù)以及對(duì)應(yīng)的變更操作,過濾掉未變更的數(shù)據(jù)行,從而減少每日的同步數(shù)據(jù)量,提高了數(shù)據(jù)同步的效率以及時(shí)效性。
1.一種數(shù)據(jù)同步方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述當(dāng)前數(shù)據(jù)分片與所述上一數(shù)據(jù)分片得到全量數(shù)據(jù)集,包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述當(dāng)前數(shù)據(jù)分片以及所述上一數(shù)據(jù)分片均包括多條第一數(shù)據(jù)記錄,各所述第一數(shù)據(jù)記錄中包括多個(gè)關(guān)鍵字的取值,所述全量數(shù)據(jù)集中包括與各所述關(guān)鍵字對(duì)應(yīng)的第二數(shù)據(jù)記錄,所述第二數(shù)據(jù)記錄中包括所述關(guān)鍵字的原取值以及新值,所述原取值為所述關(guān)鍵字在上一數(shù)據(jù)分片中的取值,所述新值為所述關(guān)鍵字在所述當(dāng)前數(shù)據(jù)分片中的取值。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述根據(jù)所述標(biāo)記信息對(duì)所述全量數(shù)據(jù)集進(jìn)行解析,得到所述待變更數(shù)據(jù)以及對(duì)應(yīng)的變更操作,包括:
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述根據(jù)所述待變更數(shù)據(jù)和所述變更操作對(duì)第二數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行數(shù)據(jù)同步,包括:
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第一數(shù)據(jù)庫(kù)為離線數(shù)倉(cāng),所述方法還包括:
8.一種數(shù)據(jù)同步裝置,其特征在于,所述裝置包括:
9.一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,其特征在于,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述方法的步驟。
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述的方法的步驟。