一種異步遠程復(fù)制數(shù)據(jù)的方法和設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)備份容災(zāi)技術(shù),具體涉及一種異步遠程復(fù)制數(shù)據(jù)的方法。
【背景技術(shù)】
[0002]容災(zāi)系統(tǒng)是指在相隔較遠的異地,建立兩套或多套功能相同的IT系統(tǒng),互相之間可以進行健康狀態(tài)監(jiān)視和功能切換,當(dāng)一處系統(tǒng)因意外(如火災(zāi)、地震等)停止工作時,整個應(yīng)用系統(tǒng)可以切換到另一處,使得該系統(tǒng)功能可以繼續(xù)正常工作。容災(zāi)技術(shù)是系統(tǒng)的高可用性技術(shù)的一個組成部分,容災(zāi)系統(tǒng)更加強調(diào)處理外界環(huán)境對系統(tǒng)的影響,特別是災(zāi)難性事件對整個IT節(jié)點的影響,提供節(jié)點級別的系統(tǒng)恢復(fù)功能。
[0003]遠程復(fù)制是數(shù)據(jù)保護的重要組成部分,提供主站點失效時的數(shù)據(jù)保護功能。遠程復(fù)制提供一個連續(xù)的,非破壞性的,主機獨立的解決方案以應(yīng)對災(zāi)難恢復(fù),數(shù)據(jù)備份或者遠距離數(shù)據(jù)迀移。利用存儲系統(tǒng)強大的遠程復(fù)制功能,可以讓不同站點間的存儲池或整個系統(tǒng)通過FC或者IP SAN進行數(shù)據(jù)拷貝。當(dāng)本地系統(tǒng)故障或者事故發(fā)生而導(dǎo)致源卷數(shù)據(jù)損壞時,用戶可以借助于基于磁盤的遠程復(fù)制卷在幾分鐘內(nèi)恢復(fù)服務(wù)。如果本地故障恢復(fù)時用戶想把存儲應(yīng)用切換回來,可以快速在兩個卷之間實現(xiàn)反向同步。
[0004]現(xiàn)有容災(zāi)系統(tǒng)多采用同步方式傳輸備份數(shù)據(jù)。同步方式對網(wǎng)絡(luò)延遲性能要求較高,占用傳輸帶寬大。目前公司網(wǎng)絡(luò)性能參差不齊,采用同步方式備份數(shù)據(jù)很難滿足用戶的要求。因此,急需提出一種種異步遠程復(fù)制數(shù)據(jù)的方法,以基于公司網(wǎng)絡(luò)現(xiàn)狀提升數(shù)據(jù)傳輸效率,滿足客戶需求。
【發(fā)明內(nèi)容】
[0005]為了解決上述現(xiàn)有技術(shù)中存在的技術(shù)問題,本發(fā)明提出一種異步遠程復(fù)制數(shù)據(jù)的方法,所述方法在生產(chǎn)中心執(zhí)行,包括:
[0006]S1:接收寫命令,根據(jù)所述寫命令生成日志記錄,并將所述日志記錄保存在緩存中;
[0007]S2:根據(jù)所述寫命令完成數(shù)據(jù)塊寫磁盤操作;
[0008]S3:將所述日志記錄以及所述數(shù)據(jù)塊發(fā)送到容災(zāi)中心。
[0009]進一步,在所述步驟SI之前還包括:
[0010]Sll判斷接收到來自用戶的建立一個一致卷組鏡像對CVGPair的請求,基于所述請求完成異步遠程復(fù)制數(shù)據(jù)的初始化。
[0011]進一步,所述步驟Sll中所述基于所述請求完成異步遠程復(fù)制數(shù)據(jù)的初始化包括:
[0012]從接收到的所述建立一個一致卷組鏡像對CVGPair的請求中解析出所要求建立的一致卷組鏡像對CVGPair的鏡像卷對組VPairG信息,根據(jù)該信息完成所述初始化。
[0013]進一步,所述步驟Sll中所述的初始化包括:為所述VPairG中的每一個鏡像卷對VPair建立一條用于數(shù)據(jù)塊傳輸?shù)倪壿嬫溌罚暾埦彺婵臻g,建立比特位映射bitmap。
[0014]進一步,所述bitmap用來標記所述VPair中數(shù)據(jù)塊的狀態(tài)。
[0015]一種異步遠程復(fù)制數(shù)據(jù)的方法,所述方法在容災(zāi)中心執(zhí)行,包括:
[0016]S21:接收生產(chǎn)中心發(fā)送的日志記錄和待更新數(shù)據(jù)塊;
[0017]S22:將所述日志記錄保存在緩存中,并提取所述數(shù)據(jù)塊的寫請求時間戳;
[0018]S23:根據(jù)所述寫請求時間戳和所述日志記錄將從生產(chǎn)中心接收到的數(shù)據(jù)塊寫入容災(zāi)中心的磁盤。
[0019]進一步,在所述步驟S21之前還包括如下步驟:
[0020]S211:從生產(chǎn)中心接收建立鏡像卷對組VpairG的信息,根據(jù)所述信息完成異步遠程復(fù)制數(shù)據(jù)的初始化。
[0021]進一步,所述初始化包括:為所述VPairG中的每一個鏡像卷對VPair建立一條用于數(shù)據(jù)塊傳輸?shù)倪壿嬫溌?,申請緩存空間,用于存放所述日志記錄和待更新數(shù)據(jù)塊。
[0022]一種位于生產(chǎn)中心的異步遠程復(fù)制數(shù)據(jù)的設(shè)備,包括:
[0023]總控制模塊,用于判斷是否接收到來自用戶的建立一個一致卷組鏡像對CVGPair的請求,從該請求中解析出所要求建立的鏡像卷對組VPairG信息;
[0024]異步遠程復(fù)制模塊,用于接收總控制模塊轉(zhuǎn)發(fā)的所要求建立的鏡像卷對組VPairG信息,啟動管理模塊,以及接收寫命令;
[0025]管理模塊,用于為VPairG中的每一個鏡像卷對VPair建立一條用于數(shù)據(jù)塊傳輸?shù)倪壿嬫溌?,向生產(chǎn)中心的陣列控制器申請緩存空間,建立比特位映射bitmap,以及啟動寫處理模塊和復(fù)制模塊;
[0026]命令集轉(zhuǎn)換模塊,用于向所述異步遠程復(fù)制模塊發(fā)送寫命令;
[0027]寫處理模塊,用于根據(jù)寫命令生成日志記錄,并存放在所述緩存空間中;
[0028]復(fù)制模塊,用于調(diào)用網(wǎng)絡(luò)模塊,通過IP WAN把緩存空間中記錄的日志記錄以及需要更新的數(shù)據(jù)塊發(fā)送到容災(zāi)中心。
[0029]一種位于容災(zāi)中心的異步遠程復(fù)制數(shù)據(jù)的設(shè)備,包括:
[0030]管理模塊,用于在接收到生產(chǎn)中心發(fā)送的建立鏡像卷對組VpairG的信息后,執(zhí)行初始化工作,包括為所述VpairG中的鏡像卷對VPair建立一條用于接收數(shù)據(jù)塊的邏輯鏈路,向容災(zāi)中心的陣列控制器申請緩存空間,存放從生產(chǎn)中心接收的日志記錄和更新的數(shù)據(jù)塊,為所述VPair啟動接收模塊和寫處理模塊;
[0031]接收模塊,用于接收生產(chǎn)中心發(fā)送的建立鏡像卷對組VpairG的信息,日志記和待更的新數(shù)據(jù)塊,將所述日志記錄保存在緩存空間中,并將所述數(shù)據(jù)塊的寫請求時間戳發(fā)送給時間戳判定模塊,然后向生產(chǎn)中心發(fā)送確認信息;
[0032]時間戳判定模塊,用于根據(jù)寫請求的時戳順序,控制寫處理模塊將接收的待更新數(shù)據(jù)塊寫入緩存模塊中;
[0033]緩存模塊,用于按照日志記錄結(jié)構(gòu)中的記錄信息完成待更新數(shù)據(jù)庫的寫磁盤操作;
[0034]總控制模塊,用于在系統(tǒng)進行災(zāi)難恢復(fù)時,控制從容災(zāi)中心到生產(chǎn)中心的數(shù)據(jù)復(fù)制。
[0035]本發(fā)明的有益效果是,在異步模式中,減少了網(wǎng)絡(luò)傳輸延遲對系統(tǒng)性能造成的影響,本地生產(chǎn)中心主機系統(tǒng)中的應(yīng)用程序連續(xù)發(fā)出多個寫請求時,只需等待數(shù)據(jù)寫入生產(chǎn)中心存儲系統(tǒng)之后,后續(xù)寫可繼續(xù)執(zhí)行。此后再由生產(chǎn)中心與容災(zāi)中心進行連續(xù)的多次數(shù)據(jù)復(fù)制,即兩個系統(tǒng)之間允許滯后多個寫操作。該模式適用于網(wǎng)絡(luò)鏈路帶寬較小和網(wǎng)絡(luò)傳播延遲較大的情況。
【附圖說明】
[0036]圖1是本發(fā)明提出的生產(chǎn)中心異步遠程復(fù)制數(shù)據(jù)的方法流程圖;
[0037]圖2是本發(fā)明提出的根據(jù)接收到的寫命令,執(zhí)行異步遠程數(shù)據(jù)復(fù)制的流程圖;
[0038]圖3是本發(fā)明提出的一種位于生產(chǎn)中心的異步遠程復(fù)制數(shù)據(jù)設(shè)備;
[0039]圖4是本發(fā)明提出的容災(zāi)中心異步遠程復(fù)制數(shù)據(jù)的方法流程圖;
[0040]圖5是本發(fā)明提出的容災(zāi)中心執(zhí)行異步遠程數(shù)據(jù)復(fù)制的流程圖;
[0041]圖6是本發(fā)明提出的一種位于容災(zāi)中心的異步遠程復(fù)制數(shù)據(jù)設(shè)備。
【具體實施方式】
[0042]下面參照附圖詳細介紹本發(fā)明提出的技術(shù)方案。
[0043]本發(fā)明提出的技術(shù)方案包括:生產(chǎn)中心的異步處理流程和容災(zāi)中心的異步處理流程。
[0044]1.生產(chǎn)中心的異步處理流程
[0045]參見附圖1,其示出了本發(fā)明的生產(chǎn)中心的異步處理流程,包括如下步驟:
[0046]Sll:判斷是否接收到來自用戶的建立一個一致卷組鏡像對CVGPair的請求。
[0047]本步驟中由總控制模塊判斷是否接收到來自用戶的建立一個一致卷組鏡像對CVGPair的請求。
[0048]S12:將請求發(fā)送給異步遠程復(fù)制模塊;
[0049]本步驟中,當(dāng)總控制模塊收到用戶的初始化命令建立一個CVGPair(—致卷組鏡像對)的請求后,從中解析出所要求建立的VPairG(鏡像卷對組)信息,發(fā)送給異步遠程復(fù)制模塊。
[0050]S13:所述異步遠程復(fù)制模塊啟動管理模塊,由所述管理模塊完成初始化工作;
[0051]本步驟中,當(dāng)異步遠程復(fù)制模塊收到對某個VPairG的初始化請求后,啟動管理模塊,所述初始化工作包括:為VPairG中的每一個VPair (鏡像卷對)建立一條用于數(shù)據(jù)塊傳輸?shù)倪壿嬫溌?,向生產(chǎn)中心的陣列控制器申請緩存cache空間,建立比特位映射bitmap和緩存cache日志區(qū)的數(shù)據(jù)結(jié)構(gòu),以及啟動寫處理模塊和復(fù)制模塊,為遠程復(fù)制做好準備。其中,bitmap用來標記VPair中數(shù)據(jù)塊的狀態(tài),緩存cache日志區(qū)用來按時間存放由主機寫命令形成的日志記錄結(jié)構(gòu)。
[0052]S14:根據(jù)接收到的寫命令,執(zhí)行異步遠程數(shù)據(jù)復(fù)制。
[0053]參見附圖2,其示出了步驟S4的具體流程。在初始化完成后,當(dāng)生產(chǎn)中心的異步遠程復(fù)制模塊接收到命令集轉(zhuǎn)換模塊的寫命令之后,先由寫處理模塊根據(jù)這個寫命令生成日志記錄結(jié)構(gòu)并把它存放在緩存cache日志區(qū)中,然后把這個從命令集轉(zhuǎn)換模塊接收到的寫命令下傳給緩存cache模塊,由緩存cache模塊完成寫磁盤操作。當(dāng)寫處理模塊得到緩存cache模塊的反饋后,向命令集轉(zhuǎn)換模塊發(fā)送確認信息。異步遠程復(fù)制模塊中的復(fù)制模塊將負責(zé)調(diào)用網(wǎng)絡(luò)模塊,通過IP WAN把緩存cac