本技術(shù)涉及數(shù)據(jù)庫,特別是涉及一種遠程復(fù)制方法、裝置、計算機設(shè)備、存儲介質(zhì)和計算機程序產(chǎn)品。
背景技術(shù):
1、隨著計算機技術(shù)的發(fā)展,人們對數(shù)據(jù)庫的容災(zāi)備份能力提出了越來越高的要求,而遠程復(fù)制技術(shù)是提高數(shù)據(jù)庫的容災(zāi)備份能力的核心技術(shù)。其中,遠程復(fù)制技術(shù)指的是從數(shù)據(jù)中心可以通過遠程復(fù)制主數(shù)據(jù)中心內(nèi)的數(shù)據(jù),從而實現(xiàn)數(shù)據(jù)在主從數(shù)據(jù)中心之間的遠程同步。如此,即使主數(shù)據(jù)中心發(fā)生故障,也不會波及從數(shù)據(jù)中心中的備份數(shù)據(jù)。
2、傳統(tǒng)方法,在主數(shù)據(jù)中心進行文件變更的過程中,生成操作日志,進而,從數(shù)據(jù)中心可以根據(jù)該操作日志進行遠程復(fù)制,實現(xiàn)數(shù)據(jù)在主從數(shù)據(jù)中心之間的遠程同步。然而,傳統(tǒng)的遠程復(fù)制方法,存在主從數(shù)據(jù)中心之間數(shù)據(jù)不一致的問題。
技術(shù)實現(xiàn)思路
1、基于此,有必要針對上述技術(shù)問題,提供一種能夠保證主從數(shù)據(jù)中心之間數(shù)據(jù)一致的遠程復(fù)制方法、裝置、計算機設(shè)備、計算機可讀存儲介質(zhì)和計算機程序產(chǎn)品。
2、第一方面,本技術(shù)提供了一種遠程復(fù)制方法。應(yīng)用于主數(shù)據(jù)中心,所述主數(shù)據(jù)中心與從數(shù)據(jù)中心之間通信連接,所述方法包括:
3、根據(jù)數(shù)據(jù)變更請求對所述主數(shù)據(jù)中心中的原始數(shù)據(jù)進行至少一次變更操作,生成與所述至少一次變更操作對應(yīng)的中間數(shù)據(jù);
4、創(chuàng)建所述中間數(shù)據(jù)的快照;
5、將所述中間數(shù)據(jù)與所述中間數(shù)據(jù)的快照存儲至所述主數(shù)據(jù)中心,控制所述從數(shù)據(jù)中心根據(jù)目標快照,從所述主數(shù)據(jù)中心中獲取到所述目標快照對應(yīng)的目標中間數(shù)據(jù),對所述目標中間數(shù)據(jù)進行遠程復(fù)制。
6、本技術(shù)實施例可以通過對主數(shù)據(jù)中心中的原始數(shù)據(jù)進行至少一次變更操作,得到與各變更操作對應(yīng)的中間數(shù)據(jù),并為各變更操作對應(yīng)的中間數(shù)據(jù)創(chuàng)建各中間數(shù)據(jù)的快照。之后,將各變更操作對應(yīng)的中間數(shù)據(jù)以及各中間數(shù)據(jù)的快照存儲至主數(shù)據(jù)中心中,此時,主數(shù)據(jù)中心中就包括了各變更操作對應(yīng)的中間數(shù)據(jù)以及各中間數(shù)據(jù)的快照。從而,從數(shù)據(jù)中心就能夠根據(jù)目標快照,從主數(shù)據(jù)中心中獲取到目標快照對應(yīng)的、且需要進行遠程復(fù)制的目標中間數(shù)據(jù),進而,就能夠?qū)δ繕酥虚g數(shù)據(jù)進行遠程復(fù)制。因此,本技術(shù)實施例中的從數(shù)據(jù)中心能夠遠程復(fù)制與變更操作對應(yīng)的中間數(shù)據(jù),從而能夠保證主從數(shù)據(jù)中心之間數(shù)據(jù)的一致性。
7、在其中一個實施例中,所述將所述中間數(shù)據(jù)與所述中間數(shù)據(jù)的快照存儲至所述主數(shù)據(jù)中心,包括:
8、獲取所述中間數(shù)據(jù)的數(shù)據(jù)版本標識及所述中間數(shù)據(jù)的快照的快照標識;
9、根據(jù)所述中間數(shù)據(jù)的數(shù)據(jù)版本標識及所述快照的快照標識,將所述中間數(shù)據(jù)與所述中間數(shù)據(jù)的快照存儲至所述主數(shù)據(jù)中心。
10、本實施例中,獲取中間數(shù)據(jù)的數(shù)據(jù)版本標識及中間數(shù)據(jù)的快照的快照標識;根據(jù)中間數(shù)據(jù)的數(shù)據(jù)版本標識及快照的快照標識,將中間數(shù)據(jù)與中間數(shù)據(jù)的快照存儲至主數(shù)據(jù)中心。主數(shù)據(jù)中心中就包括了各變更操作對應(yīng)的中間數(shù)據(jù)以及各中間數(shù)據(jù)的快照。從而,從數(shù)據(jù)中心就能夠根據(jù)目標快照,從主數(shù)據(jù)中心中獲取到目標快照對應(yīng)的、且需要進行遠程復(fù)制的目標中間數(shù)據(jù),進而,就能夠?qū)δ繕酥虚g數(shù)據(jù)進行遠程復(fù)制。且通過為中間數(shù)據(jù)的數(shù)據(jù)版本及中間數(shù)據(jù)的快照的快照配置對應(yīng)的標識,而不用在進行變更操作的過程中額外記錄操作日志,能夠提高進行變更操作的效率。
11、在其中一個實施例中,所述數(shù)據(jù)版本標識包括數(shù)據(jù)版本序列號,所述快照標識包括快照序列號;所述中間數(shù)據(jù)的數(shù)據(jù)版本序列號小于所述中間數(shù)據(jù)的快照的快照序列號,所述中間數(shù)據(jù)的前一個中間數(shù)據(jù)的快照序列號小于所述中間數(shù)據(jù)的數(shù)據(jù)版本序列號;
12、所述根據(jù)所述中間數(shù)據(jù)的數(shù)據(jù)版本標識及所述快照的快照標識,將所述中間數(shù)據(jù)與所述中間數(shù)據(jù)的快照存儲至所述主數(shù)據(jù)中心,包括:
13、從所述快照的快照序列號中確定目標快照序列號;所述目標快照序列號為目標中間數(shù)據(jù)的快照的序列號;
14、根據(jù)所述目標快照序列號與所述中間數(shù)據(jù)的數(shù)據(jù)版本序列號之間的大小關(guān)系,從所述中間數(shù)據(jù)中確定待存儲中間數(shù)據(jù),將所述待存儲中間數(shù)據(jù)存儲至所述主數(shù)據(jù)中心。
15、本實施例中,從快照的快照序列號中確定目標快照序列號;目標快照序列號為目標中間數(shù)據(jù)的快照的序列號。由于各序列號全局唯一的、且隨著時間遞增的,因此,可以根據(jù)目標快照序列號與中間數(shù)據(jù)的數(shù)據(jù)版本序列號之間的大小關(guān)系,從中間數(shù)據(jù)中確定待存儲中間數(shù)據(jù),并將待存儲中間數(shù)據(jù)存儲至主數(shù)據(jù)中心。如此,主數(shù)據(jù)中心中就包括了待存儲中間數(shù)據(jù),從而,從數(shù)據(jù)中心就能夠從主數(shù)據(jù)中心中獲取到需要進行遠程復(fù)制的待存儲中間數(shù)據(jù),并能夠?qū)Υ鎯χ虚g數(shù)據(jù)進行遠程復(fù)制。
16、在其中一個實施例中,所述根據(jù)所述目標快照序列號與所述中間數(shù)據(jù)的數(shù)據(jù)版本序列號之間的大小關(guān)系,從所述中間數(shù)據(jù)中確定待存儲中間數(shù)據(jù),包括:
17、若所述目標快照序列號大于所述中間數(shù)據(jù)的數(shù)據(jù)版本序列號,則將所述中間數(shù)據(jù)作為候選中間數(shù)據(jù);
18、獲取所述候選中間數(shù)據(jù)的數(shù)目,若所述候選中間數(shù)據(jù)的數(shù)目超過預(yù)設(shè)數(shù)目,則從所述候選中間數(shù)據(jù)中確定待存儲中間數(shù)據(jù)。
19、本實施例中,通過將數(shù)據(jù)版本序列號小于該目標快照序列號的中間數(shù)據(jù)作為候選中間數(shù)據(jù),并根據(jù)候選中間數(shù)據(jù)的數(shù)目與預(yù)設(shè)數(shù)目之間的大小關(guān)系,確定是否延遲刪除候選中間數(shù)據(jù),就能夠從候選中間數(shù)據(jù)中確定待存儲中間數(shù)據(jù)。從而能夠在至少一個變更操作包括至少一個中間數(shù)據(jù)的情況下,對中間數(shù)據(jù)中的待存儲中間數(shù)據(jù)進行存儲,如此,主數(shù)據(jù)中心中就包括了待存儲中間數(shù)據(jù)。
20、在其中一個實施例中,所述從所述候選中間數(shù)據(jù)中確定待存儲中間數(shù)據(jù),包括:
21、從所述候選中間數(shù)據(jù)對應(yīng)的數(shù)據(jù)版本序列號中確定目標數(shù)據(jù)版本序列號;所述目標數(shù)據(jù)版本序列號為與所述目標快照序列號最接近的數(shù)據(jù)版本序列號;
22、將所述目標數(shù)據(jù)版本序列號對應(yīng)的候選中間數(shù)據(jù)作為所述待存儲中間數(shù)據(jù)。
23、本實施例中,通過確定與目標快照序列號最接近的目標數(shù)據(jù)版本序列號,并將目標數(shù)據(jù)版本序列號對應(yīng)的候選中間數(shù)據(jù)作為待存儲中間數(shù)據(jù),就能夠從候選中間數(shù)據(jù)中確定待存儲中間數(shù)據(jù)。從而能夠在至少一個變更操作包括至少一個中間數(shù)據(jù)的情況下,對中間數(shù)據(jù)中的待存儲中間數(shù)據(jù)進行存儲,以使主數(shù)據(jù)中心中包括待存儲中間數(shù)據(jù)。
24、在其中一個實施例中,所述控制所述從數(shù)據(jù)中心根據(jù)目標快照,從所述主數(shù)據(jù)中心中獲取到所述目標快照對應(yīng)的目標中間數(shù)據(jù),對所述目標中間數(shù)據(jù)進行遠程復(fù)制,包括:
25、在所述從數(shù)據(jù)中心中,根據(jù)快照標識獲取所述目標中間數(shù)據(jù)的快照之前已存儲的相鄰快照;
26、將所述目標中間數(shù)據(jù)與所述相鄰快照對應(yīng)的中間數(shù)據(jù)之間的差異數(shù)據(jù),存儲至所述目標中間數(shù)據(jù)中;
27、控制所述從數(shù)據(jù)中心根據(jù)所述目標中間數(shù)據(jù)的快照,從所述主數(shù)據(jù)中心中獲取到所述差異數(shù)據(jù),對所述目標中間數(shù)據(jù)進行遠程復(fù)制。
28、本實施例中,通過對同一數(shù)據(jù)的不同快照對應(yīng)中間數(shù)據(jù)進行差異記錄,能夠直接根據(jù)記錄的差異數(shù)據(jù)以及已存儲的相鄰快照對應(yīng)的中間數(shù)據(jù),對目標中間數(shù)據(jù)進行遠程復(fù)制。從而,能夠在進行遠程復(fù)制的過程中,減少不必要的數(shù)據(jù)拷貝。
29、第二方面,本技術(shù)還提供了一種遠程復(fù)制裝置。應(yīng)用于主數(shù)據(jù)中心,所述主數(shù)據(jù)中心與從數(shù)據(jù)中心之間通信連接,所述裝置包括:
30、變更模塊,用于根據(jù)數(shù)據(jù)變更請求對所述主數(shù)據(jù)中心中的原始數(shù)據(jù)進行至少一次變更操作,生成與所述至少一次變更操作對應(yīng)的中間數(shù)據(jù);
31、快照創(chuàng)建模塊,用于創(chuàng)建所述中間數(shù)據(jù)的快照;
32、遠程復(fù)制模塊,用于將所述中間數(shù)據(jù)與所述中間數(shù)據(jù)的快照存儲至所述主數(shù)據(jù)中心,控制所述從數(shù)據(jù)中心根據(jù)目標快照,從所述主數(shù)據(jù)中心中獲取到所述目標快照對應(yīng)的目標中間數(shù)據(jù),對所述目標中間數(shù)據(jù)進行遠程復(fù)制。
33、第三方面,本技術(shù)還提供了一種計算機設(shè)備。所述計算機設(shè)備包括存儲器和處理器,所述存儲器存儲有計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)上述第一方面中任一項實施例中的方法的步驟。
34、第四方面,本技術(shù)還提供了一種計算機可讀存儲介質(zhì)。所述計算機可讀存儲介質(zhì),其上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)上述第一方面中任一項實施例中的方法的步驟。
35、第五方面,本技術(shù)還提供了一種計算機程序產(chǎn)品。所述計算機程序產(chǎn)品,包括計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)上述第一方面中任一項實施例中的方法的步驟。
36、上述遠程復(fù)制方法、裝置、計算機設(shè)備、存儲介質(zhì)和計算機程序產(chǎn)品,根據(jù)數(shù)據(jù)變更請求對主數(shù)據(jù)中心中的原始數(shù)據(jù)進行至少一次變更操作,生成與至少一次變更操作對應(yīng)的中間數(shù)據(jù);創(chuàng)建中間數(shù)據(jù)的快照;將中間數(shù)據(jù)與中間數(shù)據(jù)的快照存儲至主數(shù)據(jù)中心,控制從數(shù)據(jù)中心根據(jù)目標快照,從主數(shù)據(jù)中心中獲取到目標快照對應(yīng)的目標中間數(shù)據(jù),對目標中間數(shù)據(jù)進行遠程復(fù)制。本技術(shù)實施例可以通過對主數(shù)據(jù)中心中的原始數(shù)據(jù)進行至少一次變更操作,得到與各變更操作對應(yīng)的中間數(shù)據(jù),并為各變更操作對應(yīng)的中間數(shù)據(jù)創(chuàng)建各中間數(shù)據(jù)的快照。之后,將各變更操作對應(yīng)的中間數(shù)據(jù)以及各中間數(shù)據(jù)的快照存儲至主數(shù)據(jù)中心中,此時,主數(shù)據(jù)中心中就包括了各變更操作對應(yīng)的中間數(shù)據(jù)以及各中間數(shù)據(jù)的快照。從而,從數(shù)據(jù)中心就能夠根據(jù)目標快照,從主數(shù)據(jù)中心中獲取到目標快照對應(yīng)的、且需要進行遠程復(fù)制的目標中間數(shù)據(jù),進而,就能夠?qū)δ繕酥虚g數(shù)據(jù)進行遠程復(fù)制。因此,本技術(shù)實施例中的從數(shù)據(jù)中心能夠遠程復(fù)制與變更操作對應(yīng)的中間數(shù)據(jù),從而能夠保證主從數(shù)據(jù)中心之間數(shù)據(jù)的一致性。