本發(fā)明涉及數(shù)據(jù)的備份技術,尤其涉及一種數(shù)據(jù)的快照備份方法及裝置。
背景技術:
圖1為虛擬機的存儲數(shù)據(jù)的結構示意圖,如圖1所示,對于每一個虛擬機來說,由基礎數(shù)據(jù)部分和差異數(shù)據(jù)部分構成存儲數(shù)據(jù);其中,基礎數(shù)據(jù)部分為虛擬機創(chuàng)建時選取的鏡像數(shù)據(jù),差異數(shù)據(jù)部分為虛擬機實際自身的數(shù)據(jù);基于云平臺的多個虛擬機采用同一個鏡像創(chuàng)建則會共用同一個基礎數(shù)據(jù)部分,所不同的是差異數(shù)據(jù)部分是各自維護自己的數(shù)據(jù)。
當前的云平臺在快照備份虛擬機的存儲數(shù)據(jù)時候采用全量快照備份的方式,圖2為對虛擬機的存儲數(shù)據(jù)采用全量快照備份方式的操作示意圖,如圖2所示,當前的云平臺有三個虛擬機,分別為虛擬機a,虛擬機b,虛擬機c;虛擬機a的存儲數(shù)據(jù)由基礎數(shù)據(jù)a和差異數(shù)據(jù)a1所組成,虛擬機b的存儲數(shù)據(jù)由基礎數(shù)據(jù)b和差異數(shù)據(jù)b1所組成,虛擬機c的存儲數(shù)據(jù)由基礎數(shù)據(jù)c和差異數(shù)據(jù)c1所組成;對于每一次的全量快照備份來說,都是對每一個虛擬機的基礎數(shù)據(jù)部分和差異數(shù)據(jù)部分進行全部的快照備份,最終,對于虛擬機a進行快照備份后的結果為基礎數(shù)據(jù)a和差異數(shù)據(jù)an,對于虛擬機b進行快照備份后的結果為基礎數(shù)據(jù)b和差異數(shù)據(jù)bn,對于虛擬機c進行快照備份后的結果為基礎數(shù)據(jù)c和差異數(shù)據(jù)cn;云平臺在進行批量全量快照備份的時候,往往都會產(chǎn)生冗余的數(shù)據(jù),而且會導致數(shù)據(jù)量激增,磁盤讀寫壓力過大,降低快照備份的效率。
技術實現(xiàn)要素:
有鑒于此,本發(fā)明實施例期望提供一種數(shù)據(jù)的快照備份方法及裝置,以減 少快照備份的數(shù)據(jù)量以及磁盤的讀寫壓力,有效的提高快照備份的效率。
為達到上述目的,本發(fā)明的技術方案是這樣實現(xiàn)的:
本發(fā)明提供一種數(shù)據(jù)的快照備份方法,所述方法包括:
確定云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別;
將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中的基礎數(shù)據(jù)統(tǒng)一進行一次快照備份,將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行快照備份。
上述方法中,在所述確定云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別之前,所述方法還包括:
獲取所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的信息。
上述方法中,所述確定云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別,包括:
根據(jù)所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的信息確定所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別。
上述方法中,在所述確定云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別之后,在所述將屬于同一基礎數(shù)據(jù)類別的所對應虛擬機的數(shù)據(jù)中的基礎數(shù)據(jù)統(tǒng)一進行一次快照備份之前,所述方法還包括:
將所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別進行分類,得到屬于同一基礎數(shù)據(jù)類別所對應的虛擬機。
上述方法中,所述將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行快照備份,包括:
將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行增量快照備份。
本發(fā)明還提供一種數(shù)據(jù)的快照備份裝置,所述裝置包括:
確定模塊,用于確定云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別;
備份模塊,用于將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中的基礎數(shù)據(jù)統(tǒng)一進行一次快照備份,將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù) 中各自的差異數(shù)據(jù)單獨進行快照備份。
上述裝置中,所述裝置還包括:
獲取模塊,用于獲取所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的信息。
上述裝置中,所述確定模塊,具體用于根據(jù)所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的信息確定所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別。
上述裝置中,所述裝置還包括:
分類模塊,用于將所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別進行分類,得到屬于同一基礎數(shù)據(jù)類別所對應的虛擬機。
上述裝置中,所述備份模塊,具體用于將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行增量快照備份。
本發(fā)明實施例提供的數(shù)據(jù)的快照備份方法及裝置,首先確定云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別,然后將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中的基礎數(shù)據(jù)統(tǒng)一進行一次快照備份,將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行快照備份;實現(xiàn)了將屬于同一個基礎數(shù)據(jù)類別的虛擬機的公共的數(shù)據(jù)部分僅僅做一次快照備份,大大減少了虛擬機快照備份時的基礎數(shù)據(jù)快照備份的次數(shù),從整體上減少了快照備份的數(shù)據(jù)量以及磁盤的讀寫壓力,有效的提高了快照備份的效率。
附圖說明
圖1為虛擬機的存儲數(shù)據(jù)的結構示意圖;
圖2為對虛擬機的存儲數(shù)據(jù)采用全量快照備份方式的操作示意圖;
圖3為本發(fā)明數(shù)據(jù)的快照備份方法實施例的流程圖;
圖4為本發(fā)明數(shù)據(jù)的快照備份方法實施例的操作示意圖;
圖5為本發(fā)明數(shù)據(jù)的快照備份裝置實施例的結構示意圖。
具體實施方式
下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述。
圖3為本發(fā)明數(shù)據(jù)的快照備份方法實施例的流程圖,如圖3所示,本方法可以包括如下步驟:
步驟101、獲取云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的信息。
云平臺(cloudplatforms)提供基于“云”的服務,供開發(fā)者創(chuàng)建應用時采用,可以不必構建自己的基礎,完全可以依靠云平臺來創(chuàng)建新的軟件即服務應用;在本發(fā)明實施例中,本方法可以應用在openstack云計算管理平臺上。
數(shù)據(jù)的快照備份裝置會獲取云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的信息,各自基礎數(shù)據(jù)的信息代表了各自基礎數(shù)據(jù)所屬于的類別;例如,圖4為本發(fā)明數(shù)據(jù)的快照備份方法實施例的操作示意圖,如圖4所示,數(shù)據(jù)的快照備份裝置獲取云平臺中6個虛擬機(虛擬機a、虛擬機b、虛擬機c、虛擬機d、虛擬機e、虛擬機f)的數(shù)據(jù)中各自基礎數(shù)據(jù)(基礎數(shù)據(jù)a、基礎數(shù)據(jù)b、基礎數(shù)據(jù)c、基礎數(shù)據(jù)d、基礎數(shù)據(jù)e、基礎數(shù)據(jù)f)的信息。
這里需要說明的是,數(shù)據(jù)的快照備份裝置獲取云平臺中多少個虛擬機的數(shù)量可以根據(jù)實際需求進行設置,在此不加以限定。
步驟102、確定所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別。
數(shù)據(jù)的快照備份裝置根據(jù)獲取到的云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的信息確定云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別,針對每一個虛擬機,確定各自基礎數(shù)據(jù)的類別;例如,如圖4所示,確定了虛擬機a的基礎數(shù)據(jù)a為基礎數(shù)據(jù)類別一、虛擬機b的基礎數(shù)據(jù)b為基礎數(shù)據(jù)類別一、虛擬機c的基礎數(shù)據(jù)c為基礎數(shù)據(jù)類別一,確定了虛擬機d的基礎數(shù)據(jù)d為基礎數(shù)據(jù)類別二、虛擬機e的基礎數(shù)據(jù)e為基礎數(shù)據(jù)類別二、虛擬機f的基礎數(shù)據(jù)f為基礎數(shù)據(jù)類別二。
步驟103、將所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別進行 分類,得到屬于同一基礎數(shù)據(jù)類別所對應的虛擬機。
數(shù)據(jù)的快照備份裝置將云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別進行分類,得到屬于同一基礎數(shù)據(jù)類別所對應的虛擬機;例如,如圖4所示,將屬于基礎數(shù)據(jù)類別一的虛擬機a、虛擬機b、虛擬機c規(guī)劃成同一類,將屬于基礎數(shù)據(jù)類別二的虛擬機d、虛擬機e、虛擬機f規(guī)劃成另外一類。
步驟104、將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中的基礎數(shù)據(jù)統(tǒng)一進行一次快照備份,將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行快照備份。
數(shù)據(jù)的快照備份裝置將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中的基礎數(shù)據(jù)統(tǒng)一進行一次快照備份,將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行快照備份,其中,將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行增量快照備份;
例如,如圖4所示,由于虛擬機a的基礎數(shù)據(jù)a、虛擬機b的基礎數(shù)據(jù)b、虛擬機c的基礎數(shù)據(jù)c屬于同一基礎數(shù)據(jù)類別一,即基礎數(shù)據(jù)a、基礎數(shù)據(jù)b、基礎數(shù)據(jù)c為同一個基礎數(shù)據(jù),所有該類別的虛擬機共用這個基礎數(shù)據(jù),所以只需要對基礎數(shù)據(jù)a、基礎數(shù)據(jù)b、基礎數(shù)據(jù)c統(tǒng)一進行一次快照備份,然后針對虛擬機a的差異數(shù)據(jù)an、虛擬機b的差異數(shù)據(jù)bn、虛擬機c的差異數(shù)據(jù)cn單獨進行增量快照備份;每次虛擬機恢復數(shù)據(jù)的時候都是采用該虛擬機的差異數(shù)據(jù)部分和所屬的該類別共用的基礎數(shù)據(jù)部分進行合并處理,得到完整的數(shù)據(jù)。
同理,由于虛擬機d的基礎數(shù)據(jù)d、虛擬機e的基礎數(shù)據(jù)e、虛擬機f的基礎數(shù)據(jù)f屬于同一基礎數(shù)據(jù)類別二,即基礎數(shù)據(jù)d、基礎數(shù)據(jù)e、基礎數(shù)據(jù)f為同一個基礎數(shù)據(jù),所有該類別的虛擬機共用這個基礎數(shù)據(jù),所以只需要對基礎數(shù)據(jù)d、基礎數(shù)據(jù)e、基礎數(shù)據(jù)f統(tǒng)一進行一次快照備份,然后針對虛擬機d的差異數(shù)據(jù)dn、虛擬機e的差異數(shù)據(jù)en、虛擬機f的差異數(shù)據(jù)fn單獨進行增量快照備份;每次虛擬機恢復數(shù)據(jù)的時候都是采用該虛擬機的差異數(shù)據(jù)部分和所屬的該類別共用的基礎數(shù)據(jù)部分進行合并處理,得到完整的數(shù)據(jù)。
可以看出針對基礎數(shù)據(jù)類別一和基礎數(shù)據(jù)類別二分數(shù)不同類別的虛擬機的時候,需要在各自的類別中進行分類處理,這樣做使得一個類別的虛擬機的公共的數(shù)據(jù)部分僅僅做一次快照備份,大大減少了虛擬機快照備份時的基礎數(shù)據(jù)快照備份的次數(shù),從整體上減少了快照備份的數(shù)據(jù)量以及磁盤的讀寫壓力,有效的提高了快照備份的效率。
本發(fā)明實施例提供的數(shù)據(jù)的快照備份方法,首先確定云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別,然后將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中的基礎數(shù)據(jù)統(tǒng)一進行一次快照備份,將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行快照備份;實現(xiàn)了將屬于同一個基礎數(shù)據(jù)類別的虛擬機的公共的數(shù)據(jù)部分僅僅做一次快照備份,大大減少了虛擬機快照備份時的基礎數(shù)據(jù)快照備份的次數(shù),從整體上減少了快照備份的數(shù)據(jù)量以及磁盤的讀寫壓力,有效的提高了快照備份的效率。
圖5為本發(fā)明數(shù)據(jù)的快照備份裝置實施例的結構示意圖,如圖5所示,該數(shù)據(jù)的快照備份裝置05可以包括:確定模塊51、備份模塊52;其中,
所述確定模塊51,用于確定云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別;
所述備份模塊52,用于將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中的基礎數(shù)據(jù)統(tǒng)一進行一次快照備份,將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行快照備份。
進一步的,所述裝置還包括:獲取模塊53;其中,
所述獲取模塊53,用于獲取所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的信息。
進一步的,所述確定模塊51,具體用于根據(jù)所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的信息確定所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù)的類別。
進一步的,所述裝置還包括:分類模塊54;其中,
所述分類模塊54,用于將所述云平臺中多個虛擬機的數(shù)據(jù)中各自基礎數(shù)據(jù) 的類別進行分類,得到屬于同一基礎數(shù)據(jù)類別所對應的虛擬機。
進一步的,所述備份模塊52,具體用于將屬于同一基礎數(shù)據(jù)類別所對應的虛擬機的數(shù)據(jù)中各自的差異數(shù)據(jù)單獨進行增量快照備份。
本實施例的裝置,可以用于執(zhí)行上述所示方法實施例的技術方案,其實現(xiàn)原理和技術效果類似,此處不再贅述。
在實際應用中,所述確定模塊51、備份模塊52、獲取模塊53、分類模塊54可由位于裝置上的中央處理器(cpu)、微處理器(mpu)、數(shù)字信號處理器(dsp)或現(xiàn)場可編程門陣列(fpga)等器件實現(xiàn)。
本領域內(nèi)的技術人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用硬件實施例、軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器和光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個 流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。