本發(fā)明實施例涉及大數(shù)據(jù)處理,具體涉及一種數(shù)據(jù)同步方法、裝置、設備及存儲介質。
背景技術:
1、數(shù)據(jù)同步是指在兩個或多個數(shù)據(jù)庫之間,將數(shù)據(jù)從一個數(shù)據(jù)庫復制到另一個數(shù)據(jù)庫的過程,以保持數(shù)據(jù)庫之間數(shù)據(jù)的一致性和同步。對于包括總部及多個分公司的企業(yè)而言,往往需要頻繁地進行數(shù)據(jù)同步,使得有需要的一方能夠獲得相應的數(shù)據(jù)進行消費。
2、目前,數(shù)據(jù)同步技術主要依賴于集中式架構和定期的數(shù)據(jù)復制技術,例如,當多個分公司同步總部的數(shù)據(jù)時,需要先從總部服務端下載數(shù)據(jù)到分公司或營業(yè)部本地,通過本地工具清洗數(shù)據(jù),再導入到本地數(shù)據(jù)庫,導入數(shù)據(jù)庫后才能使用數(shù)據(jù),這種方法操作繁瑣、效率低,特別是當數(shù)據(jù)文件較大時,總部與多個分公司之間跨地域傳輸消耗較多帶寬,容易導致傳輸速率緩慢,無法及時同步數(shù)據(jù)。
技術實現(xiàn)思路
1、鑒于上述問題,本發(fā)明實施例提供了一種數(shù)據(jù)同步方法、裝置、設備及存儲介質,用于解決現(xiàn)有技術中存在的數(shù)據(jù)同步效率低且不及時的問題。
2、根據(jù)本發(fā)明實施例的一個方面,提供了一種數(shù)據(jù)同步方法,包括:
3、采集各個分支機構的數(shù)據(jù)同步需求,按照預定的多個維度級別對所述數(shù)據(jù)同步需求進行多級拆分,得到多個原子需求,其中,多個所述維度級別包括數(shù)據(jù)系統(tǒng)級別、數(shù)據(jù)庫級別及數(shù)據(jù)表級別;
4、基于所述原子需求制定數(shù)據(jù)同步任務,分別將各個所述分支機構的同步任務打包為數(shù)據(jù)同步計劃;
5、從多個預定的數(shù)據(jù)中心中確定各個所述分支機構相應的第一數(shù)據(jù)中心,其中,與所述分支機構距離最近的數(shù)據(jù)中心為所述分支機構的所述第一數(shù)據(jù)中心;
6、基于各個所述分支機構的數(shù)據(jù)同步計劃,從所述第一數(shù)據(jù)中心的數(shù)據(jù)庫將數(shù)據(jù)同步至相應的分支機構的數(shù)據(jù)庫中。
7、在一種可選的方式中,所述基于所述原子需求制定數(shù)據(jù)同步任務之后,還包括:
8、基于所述原子需求,從所述第一數(shù)據(jù)中心的數(shù)據(jù)庫中確定出多個第一數(shù)據(jù)表的第一表結構信息;
9、基于所述原子需求,獲取預存的多個第二數(shù)據(jù)表的第二表結構信息;
10、將所述第一表結構信息與所述第二表結構信息進行對比,根據(jù)比對結果確定是否對各個所述分支機構的數(shù)據(jù)表進行標準化處理,所述標準化處理包括表創(chuàng)建及表結構更新的其中之一;
11、所述分別將各個所述分支機構的同步任務打包為數(shù)據(jù)同步計劃之后,還包括:
12、確定各個所述分支機構的數(shù)據(jù)庫的運行狀態(tài),當各個所述分支機構的數(shù)據(jù)庫的運行狀態(tài)為正常運行狀態(tài)時,執(zhí)行數(shù)據(jù)同步的操作。
13、在一種可選的方式中,所述基于所述原子需求制定數(shù)據(jù)同步任務之后,還包括:
14、配置所述數(shù)據(jù)同步任務的多個任務節(jié)點,基于多個所述任務節(jié)點對所述數(shù)據(jù)同步任務進行監(jiān)控;
15、所述分別將各個所述分支機構的同步任務打包為數(shù)據(jù)同步計劃之后,還包括:
16、配置所述數(shù)據(jù)同步計劃的多個計劃節(jié)點,基于多個所述計劃節(jié)點對所述數(shù)據(jù)同步計劃進行監(jiān)控。
17、在一種可選的方式中,所述方法還包括:
18、生成多個所述任務節(jié)點及多個所述計劃節(jié)點的執(zhí)行日志,并可視化輸出所述執(zhí)行日志。
19、在一種可選的方式中,所述方法還包括:
20、在數(shù)據(jù)同步過程中,監(jiān)測所述第一數(shù)據(jù)中心的機房是否出現(xiàn)異常;
21、若是,則由所述第一數(shù)據(jù)中心切換至第二數(shù)據(jù)中心,以從所述第二數(shù)據(jù)中心將數(shù)據(jù)同步至所述第一數(shù)據(jù)中心相應的分支機構的數(shù)據(jù)庫中,其中,與所述相應的分支機構距離次近的數(shù)據(jù)中心為所述相應的分支機構的第二數(shù)據(jù)中心。
22、在一種可選的方式中,所述方法還包括:
23、在數(shù)據(jù)同步過程中,提取所述第一數(shù)據(jù)中心的數(shù)據(jù)庫的操作日志,基于所述操作日志確定所述第一數(shù)據(jù)中心的數(shù)據(jù)庫的數(shù)據(jù)變更操作;
24、若所述數(shù)據(jù)變更操作所變更的數(shù)據(jù)為當前同步的數(shù)據(jù),則生成所述數(shù)據(jù)變更操作對應的變更消息,將所述變更消息發(fā)送給相應的分支機構的數(shù)據(jù)庫。
25、在一種可選的方式中,所述方法還包括:
26、在數(shù)據(jù)同步過程中,開啟提取進程,基于所述提取進程提取所述第一數(shù)據(jù)中心的數(shù)據(jù)庫的數(shù)據(jù)變化信息,將所述數(shù)據(jù)變化信息寫入軌跡文件;
27、開啟投遞進程,基于所述投遞進程將所述軌跡文件發(fā)送給相應的分支機構的數(shù)據(jù)庫。
28、根據(jù)本發(fā)明實施例的另一方面,提供了一種數(shù)據(jù)同步裝置,包括:
29、拆分模塊,用于采集各個分支機構的數(shù)據(jù)同步需求,按照預定的多個維度級別對所述數(shù)據(jù)同步需求進行多級拆分,得到多個原子需求,其中,多個所述維度級別包括數(shù)據(jù)系統(tǒng)級別、數(shù)據(jù)庫級別及數(shù)據(jù)表級別;
30、制定模塊,用于基于所述原子需求制定數(shù)據(jù)同步任務,分別將各個所述分支機構的同步任務打包為數(shù)據(jù)同步計劃;
31、確定模塊,用于從多個預定的數(shù)據(jù)中心中確定各個所述分支機構相應的第一數(shù)據(jù)中心,其中,與所述分支機構距離最近的數(shù)據(jù)中心為所述分支機構的所述第一數(shù)據(jù)中心;
32、同步模塊,用于基于各個所述分支機構的數(shù)據(jù)同步計劃,從所述第一數(shù)據(jù)中心的數(shù)據(jù)庫將數(shù)據(jù)同步至相應的分支機構的數(shù)據(jù)庫中。
33、根據(jù)本發(fā)明實施例的又一方面,提供了一種計算機設備,包括:處理器、存儲器、通信接口和通信總線,所述處理器、所述存儲器和所述通信接口通過所述通信總線完成相互間的通信;
34、所述存儲器用于存放至少一可執(zhí)行指令,所述可執(zhí)行指令使所述處理器執(zhí)行如上所述的方法。
35、根據(jù)本發(fā)明實施例的又一方面,提供了一種計算機可讀存儲介質,所述存儲介質中存儲有至少一可執(zhí)行指令,所述可執(zhí)行指令在計算機設備上運行時,使得計算機設備執(zhí)行如上所述的方法。
36、本發(fā)明實施例僅需要在總機構的數(shù)據(jù)中心進行相關操作,無需在分支機構進行任何操作,通過在總機構進行數(shù)據(jù)同步需求的拆分、任務的制定及計劃的打包及確定距離最近的數(shù)據(jù)中心,能夠使得多個分支機構同時、有序地同步總機構的數(shù)據(jù),簡化數(shù)據(jù)同步操作,數(shù)據(jù)同步高效,且能夠及時同步數(shù)據(jù)。
37、上述說明僅是本發(fā)明實施例技術方案的概述,為了能夠更清楚了解本發(fā)明實施例的技術手段,而可依照說明書的內容予以實施,并且為了讓本發(fā)明實施例的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的具體實施方式。
1.一種數(shù)據(jù)同步方法,其特征在于,所述方法包括:
2.根據(jù)權利要求1所述的方法,其特征在于,所述基于所述原子需求制定數(shù)據(jù)同步任務之后,還包括:
3.根據(jù)權利要求1所述的方法,其特征在于,所述基于所述原子需求制定數(shù)據(jù)同步任務之后,還包括:
4.根據(jù)權利要求3所述的方法,其特征在于,所述方法還包括:
5.根據(jù)權利要求1所述的方法,其特征在于,所述方法還包括:
6.根據(jù)權利要求1所述的方法,其特征在于,所述方法還包括:
7.根據(jù)權利要求1所述的方法,其特征在于,所述方法還包括:
8.一種數(shù)據(jù)同步裝置,其特征在于,包括:
9.一種計算機設備,其特征在于,包括:處理器、存儲器、通信接口和通信總線,所述處理器、所述存儲器和所述通信接口通過所述通信總線完成相互間的通信;
10.一種計算機可讀存儲介質,其特征在于,所述存儲介質中存儲有至少一可執(zhí)行指令,所述可執(zhí)行指令在計算機設備上運行時,使得計算機設備執(zhí)行如權利要求1-7任意一項所述的方法。