一種數據備份方法
【專利摘要】本發明提供了一種數據備份方法,可實現云環境下的網絡數據備份。云環境下的每個網絡節點都提供一個數據備份區,用于存儲其他網絡節點的備份數據;通過容災冗余存儲中心進行特定情況下網絡數據的冗余備份;通過云控制中心對云環境下的網絡數據備份進行全局控制,并使用基于概率統計的方法定期對所有網絡節點能夠提供數據備份的能力評分篩選,以提高云環境下網絡數據備份的效率。
【專利說明】一種數據備份方法
【技術領域】
[0001]本發明涉及云計算【技術領域】,尤其涉及一種云環境下的網絡數據備份方法。
【背景技術】
[0002]云環境,是指云計算環境,云計算(€1011(1 001111)111:1118)是分布式計算(0181:1*13111:6(103,111:1118)、并行計算和網格計算001111)111:111?)的發展,其基本原理是將計算任務通過網絡分配給多臺計算機執行,每臺計算機稱為云計算網絡的一個網絡節點。
[0003]數據備份顧名思義,就是將數據以某種方式加以保留,以便在系統遭受破壞或其他特定情況下,重新加以利用的一個過程。數據恢復就是在系統發生災難情況下,將數據還原到最近的一個狀態,以保障系統的正常運行。
[0004]隨著云計算的興起,將數據備份作為一種服務的方式提供給廣大客戶使用越來越受用戶的歡迎,這種備份服務可稱為云環境下的網絡數據備份。和傳統的備份相比,云環境下的網絡數據備份有著諸多優點。首先,云環境下的網絡數據備份的安裝、使用、維護都比傳統的備份軟件更簡便。通常用戶只需要在數據機安裝精巧的客戶端或插件,經過設置任務后,既可以按照每天或者每周的備份間隔來備份文件數據,也可以根據用戶的實際需求實時地進行數據備份。其次,作為一種網絡服務,云環境下的網絡數據備份本身解決了數據的異地容災問題,解決了用戶自行構建容災備份系統的技術難題。同時,與一般的備份相比,云環境下的網絡數據備份更注重數據傳輸和數據存儲的安全性。數據通常在傳輸的過程加密,已備份的數據由專業服務廠商負責維護其存儲和訪問安全性。另外,用戶僅根據所索取的備份服務進行付費,在用戶空閑不需要服務時,不必支付浪費額外的硬件和軟件費用,并且服務的伸縮性很強,用戶可以在不同的時候請求不同的服務,而不必擔心軟硬件的升級問題,這些問題由專業的服務廠商管理和維護,用戶僅根據服務進行付費即可。
[0005]由于云環境是一個復雜的網絡環境,而云環境下的網絡數據備份過程也往往比較復雜,它涉及到對所有網絡節點的協調和控制,同時還要兼顧效率和成本。
【發明內容】
[0006]為了對云環境下的網絡數據備份過程進行優化,解決云環境下所有網絡節點之間的協作控制問題,解決云環境下數據的容災冗余備份問題;并且為了提高云環境下網絡數據備份的效率:
[0007]本發明提出一種數據備份方法,該方法可實現云環境下的網絡數據備份。其中:
[0008]所述云環境下的網絡數據備份過程包括如下步驟:
[0009]步驟1:接收用戶本地節點的數據備份請求,所述數據備份請求攜帶待備份數據中每個文件的最新修改時間和最新備份時間;
[0010]步驟2:濾除待備份數據中最新修改時間早于最新備份時間的文件;
[0011]步驟3:將待備份數據進行壓縮;
[0012]步驟4:將壓縮的數據進行加密;
[0013]步驟5:選擇云環境下的網絡節點作為數據備份的目標節點,將待備份數據上傳至所選擇的目標節點;
[0014]步驟6:所選擇的目標節點接收到待備份數據后,對數據依次進行解密和解壓縮,將解壓縮后的數據存儲在該目標節點的數據備份區中;
[0015]其中,所述壓縮算法、加密/解密算法都是預先定義的,并由云環境下的所有網絡節點共享。
[0016]進一步地,云環境下的每個網絡節點都具有一個數據備份區和一個備份列表;
[0017]所述數據備份區用于備份來自其他網絡節點的備份數據文件,所述數據備份區中的所有備份數據文件均以固定大小的備份數據塊的格式存儲;
[0018]當所述網絡節點的數據備份區的剩余存儲空間小于或等于閾值1^0(16時,禁止向該網絡節點進行數據備份;
[0019]閾值[如如的取值可以為當前網絡節點的數據備份區總存儲容量的10% ;
[0020]所述備份列表記錄了所述數據備份區中每個文件的備份時間、文件信息和校驗值,所述文件信息包括該文件的文件名、文件大小和分塊信息。
[0021]進一步地,在步驟3之前還包括以下步驟:
[0022]步驟11:驗證用戶身份的有效性和操作權限;其中,所述操作權限包括:上傳、下載、創建、修改、復制、刪除、查看、以及搜索;
[0023]如果用戶身份經驗證為無效,則鎖定用戶的所有操作權限;
[0024]如果用戶身份經驗證為有效,但不具備上傳權限,則禁止用戶進行云環境下的網絡數據備份,向用戶發出提示;
[0025]步驟12:對用戶的待備份數據中的每個文件進行安全掃描,如果發現某個文件中含有禁止上傳的內容,則將該文件攔截和標記,向用戶發出提示;同時禁止該文件進行云環境下的網絡數據備份;
[0026]所述禁止上傳的內容包括:違法數據、不良數據、有害數據,或者由于安全保密的原因而不適宜網絡備份的數據;
[0027]步驟13:記錄用戶的網絡數據備份行為的備份日志信息,所述備份日志信息包括:
[0028]用戶節點的網絡標識、用戶名、操作權限、是否完成全部備份的標識、以及每個備份文件的文件信息;
[0029]其中,每個備份文件的文件信息包括:文件名、文件的備份時間、文件格式、文件大小、文件的校驗值、文件是否禁止上傳的標識、文件是否完成備份的標識。
[0030]進一步地,在所述步驟5中,利用云環境中的云控制中心和容災冗余存儲中心3^6111:61'對云環境下的數據備份進行全局控制,其中:
[0031]所述云控制中心動態擁有一個網絡節點的備份服務質量列表冊」181:,該備份服務質量列表冊」包括所有!1個網絡節點能夠提供的數據備份的備份服務質量評分;所述云控制中心¢:-06061'定期測試所有!1個網絡節點能夠提供數據備份的備份服務質量評分,更新維護所述備份服務質量列表冊」10,并將所有個網絡節點按其能夠提供數據備份的備份服務質量評分從高至低排序;
[0032]所述云控制中心對云環境下的數據備份進行全局控制過程包括以下步驟:
[0033]步驟冊1:所述云控制中心接收到用戶的數據備份請求后,依次對所述待備份數據中的每個文件執行下述重復性過濾:
[0034]首先,計算待備份數據中當前文件的校驗值;
[0035]其次,查詢所有其他網絡節點的數據備份區中是否存在同名文件;
[0036]若存在,則將用戶本地節點中該文件的校驗值與查詢到的其他網絡節點的數據備份區中的同名文件的校驗值進行比較;
[0037]如果校驗值相同,表示兩個文件完全相同,不需要備份該文件;
[0038]所述校驗值可以是哈希值或105值;
[0039]步驟082:所述云控制中心'查詢所述備份服務質量列表冊」181:,按照網絡節點能夠提供數據備份的備份服務質量評分從高至低的順序選擇評分最高的一個網絡節點作為數據備份的目標節點;
[0040]步驟冊3:如果當前目標節點的數據備份區的容量能夠保證完成所述數據備份請求中所有文件的備份,則將所述數據備份請求中的所有文件備份至當前目標節點,然后結束;否則,轉到步驟邸4 ;
[0041]步驟冊4:當發現當前目標節點的數據備份區的剩余存儲空間小于或等于閾值乙110(16時,停止向當前目標節點進行數據備份,刪除當前目標節點中備份中斷的文件;然后,按照網絡節點能夠提供數據備份的備份服務質量評分從高至低的順序選擇下一個網絡節點作為下一目標節點,將當前目標節點中備份中斷的文件重新備份至下一目標節點,并將剩余的未備份文件繼續備份至所述下一目標節點;
[0042]步驟冊5:以此類推,直至完成所述數據備份請求中所有文件的備份;
[0043]閾值代表網絡節點的數據備份區中允許存儲的單個文件所占空間的最大值;
[0044]所述容災冗余存儲中心3^6111:61'可以結合閾值的比較判斷,對用戶的所述待備份數據中的大文件進行同步的冗余備份,具體地:
[0045]如果所述待備份數據中存在大小大于閾值的文件,則在向作為數據備份的目標節點的網絡節點備份該文件的同時,將該文件同步鏡像拷貝至所述容災冗余存儲中心
3—0611 七 61*0
[0046]進一步地,在步驟5中,所述將待備份數據上傳至所選擇的目標節點包括:用戶本地節點依次將用戶的待備份數據中每個文件的所有文件分塊上傳至作為數據備份的目標節點的網絡節點,具體地:
[0047]步驟5.1:在用戶本地節點開辟一塊字節數為I的內存作為緩沖池,用于存儲待發送數據塊;
[0048]步驟5.2:依次將用戶的待備份數據中的每個文件按照固定字節數⑶劃分成文件分塊形成數據塊,將所述數據塊依次存入緩沖池;若某個文件最后一塊數據字節數不足[0,也作為一個數據塊讀取;
[0049]步驟5.3:從緩沖池中讀取數據塊,依次發送至所述作為數據備份的目標節點的網絡節點,直至所述待備份數據全部發送完畢。
[0050]進一步地,在步驟5.2中:
[0051]所述數據塊的大小10的取值范圍為:161(8 ^ 10 ^ 818 ;
[0052]所述緩沖池的長度I的取值范圍如下:
[0053]當161(8 ^ 10 ^ 2561(8 時,I = 32*10 ;
[0054]當256詘〈10 彡 118 時,I = 16*10 ;
[0055]當118〈10 彡 418 時,I = 8*10 ;
[0056]當418〈10 彡 1618 時,I = 4*10。
[0057]進一步地,所述網絡節點1的備份服務質量評分81計算如下:
[0058]81 =(1-111) V?公式(1)
[0059]上述變量中,對于網絡節點1 為備份訪問頻率,^為網絡節點的數據備份區的可用存儲空間容量,0為叩11運算處理能力,8為網絡傳輸速度,III為文件備份失敗率,?為服務付費標準。
[0060]進一步地,所述云控制中心以周期I定期篩除備份服務質量評分異常的網絡節點,包括以下步驟:
[0061]步驟81:將所有II個網絡節點能夠提供數據備份的備份服務質量評分81,82,…81,…,811構建為一個備份服務質量評分向量3 = (81, 82,…81,…,811);其中,81表示網絡節點1的備份服務質量評分;
[0062]步驟82:按照周期I定期生成所述備份服務質量評分向量3的時間序列8(1),8 (2),…8 0)…,其中,3 0) = (81 0),82 0),…,81 0),…,如 0)),8 0)表示在第』個周期的備份服務質量評分向量,810)表示網絡節點1在第』個周期的備份服務質量評分;
[0063]步驟83:按照周期I定期執行以下步驟:
[0064]步驟83.1:對于在第』個周期的備份服務質量評分向量3 0),定義3 0)的預測向量為0),8 0)的一級誤差向量為£8 0),計算如下:
[0065]=入 1.3 0) +(1-入 1).93 0.-1)公式⑵
[0066]£8 0) = 8(^)-^8(^-1)公式⑶
[0067]其中,一級誤差系數入1為0.25,^8(0) = 8(1);
[0068]步驟83.2:根據第』個周期的3 0)的一級誤差向量為£8 0),計算3 0)的二級誤差向量如下:
[0069]£8-2 0) = 1^2.£80.) + (1 -人 2).£8.20-1) |公式⑷
[0070]其中,二級誤差系數入2為0.15,£8.2 (0) = 0 ;
[0071]步驟83.3:根據第』個周期的3 0)的二級誤差向量0),計算3 0)的三級誤差向量如下:
[0072]£8-3 0) = | 入 3.£8.2 0) + (1 -人 3).£8.3 0-1) |公式(5)
[0073]其中,三級誤差系數X 3為0.05,£8.3 (0) = 0 ;
[0074]步驟83.4:將第』個周期的30)的三級誤差向量£130)中的每一個分量與預先設定的備份服務誤差閾值1—28相比較;
[0075]如果存在超過備份服務誤差閾值1^28的分量,則確定該分量所對應網絡節點在該周期的備份服務質量評分為異常;并且
[0076]如果一個網絡節點連續兩個周期的備份服務質量評分為異常,則將該網絡節點加入備份節點黑名單列表同時,將該網絡節點的數據備份區中的備份數據拷貝至所述容災冗余存儲中心3^611
[0077]進一步地,所述步驟83還包括:
[0078]步驟83.5:所述云控制中心以周期I定期掃描所述備份節點黑名單列表如果發現備份服務質量評分高于閾值18^機的網絡節點,則將該網絡節點從所述備份節點黑名單列表中刪除。
[0079]本發明的有益效果在于:優化了云環境下的網絡數據備份過程,解決云環境下所有網絡節點之間的控制協作問題;同時解決了云環境下網絡數據的容災冗余備份問題;還可提高云環境下網絡數據備份的效率。
【專利附圖】
【附圖說明】
[0080]下面結合附圖對本發明進一步說明:
[0081]圖1是本發明云環境下的網絡數據備份的系統結構圖;
[0082]圖2是本發明云環境下的網絡數據備份的流程圖。
【具體實施方式】
[0083]本發明提出了一種數據備份方法,該方法可實現云環境下的網絡數據備份。
[0084]下面結合附圖和具體實施例,對本發明進行進一步的詳細描述,但不作為對本發明的限定。
[0085]圖1是本發明云環境下的網絡數據備份的系統結構圖,云環境下的網絡數據恢復的系統結構與此相同。
[0086]如圖1所示,本發明提出了一種數據備份方法,可實現云環境下的網絡數據備份,具體地:本發明的系統主要由通過網絡相互連接的云環境下的網絡節點以及云控制中心
1:61'、容災冗余存儲中心三部分組成。
[0087]為了實現全局的監控和數據的容災冗余備份和恢復,本發明利用云環境中的云控制中心和容災冗余存儲中心對云環境下的數據備份和恢復進行控制。總體來說,由于所述云控制中心和所述容災冗余存儲中心3^611都具有相對集中的功能,僅用于完成特定的控制、備份任務,因此兩者都不會消耗過于龐大的存儲空間;而云環境下的網絡數據備份和數據恢復的備份存儲空間,主要是由云環境下的眾多網絡節點中的數據備份區來實現。
[0088]用戶本地節點在云環境下的網絡數據備份和數據恢復的首選網絡位置是目標節點,為了提高云環境下的網絡數據備份和數據恢復的效率,本發明在數據備份和數據恢復的過程中使用了服務質量評分機制,通過網絡節點的備份服務質量列表冊」和網絡節點的恢復服務質量列表01^110,定期測試所有網絡節點能夠提供數據備份的備份服務質量評分,更新維護所述備份服務質量列表冊」和恢復服務質量列表01^110,并將所有網絡節點按其能夠提供數據備份/數據恢復的備份/恢復服務質量評分從高至低排序。
[0089]所述云控制中心對云環境下的網絡數據備份和數據恢復進行全局性控制。所述云控制中心定期測試所有網絡節點能夠提供數據備份和數據恢復的的備份和恢復服務質量評分,更新維護備份服務質量列表冊」和恢復服務質量列表110以便挑選數據備份和數據恢復的目標節點;同時,對網絡節點相互之間、以及網絡節點和容災冗余存儲中心的網絡數據傳輸進行控制。
[0090]所述云控制中心還可以根據網絡節點的變化情況來復制、移動或刪除所述數據備份的副本。
[0091]本發明中的云控制中心'不同于一般的云端備份服務器,其主要功能不是用于存儲備份數據,而只是集中了云環境下網絡的控制功能。對于云環境下的數據容災冗余,則由容災冗余存儲中心3^611來處理。
[0092]所述容災冗余存儲中心的作用不是將所有網絡備份數據的完全鏡像冗余(這樣對于存儲空間的需求巨大,也是難以實現的),其主要用于一些特殊數據的冗余備份。比如,對一些超大的文件進行冗余備份,或者當一些網絡節點不適宜作為數據備份的目標節點時,可以將該類網絡節點中的備份數據拷貝至所述容災冗余存儲中心
[0093]所述云環境下的所有網絡節點都具有完全相同或者類似的結構。所述數據備份和數據恢復既可以是定期或者自動的,又可以按用戶的實際需求實時進行。本發明的數據備份方法主要利用云環境下的網絡節點對用戶節點的數據進行數據備份。
[0094]為了表述的方便起見,在數據備份和數據恢復過程中,將云環境下的網絡數據備份、數據恢復的目標網絡節點稱為目標節點。顯然,目標節點的集合為除了用戶本地節點之外的其他所有網絡節點組成集合的一個子集。而用戶本地節點與所有目標節點的物理結構是相同,在云環境下的所處的網絡位置也是完全對等的,用戶本地節點也可能作為其他網絡節點進行云環境下的數據備份、數據恢復的目標節點。
[0095]本發明中的云環境下的網絡節點是指在云環境下所有可以聯網的終端設備和服務器,具體的聯網方式既可以是通過有線連接,也可以是通過無線連接。
[0096]為了保證網絡傳輸中數據傳輸的安全性,在云環境下進行網絡數據備份之前,需要將備份數據中的文件依次進行壓縮和加密;與之對應地,在從云環境下恢復用戶數據時,需要對接收數據中的文件依次進行解密和解壓縮。
[0097]本發明中,云環境下的數據備份和數據恢復的邏輯單位都是單個文件;而在實際的網絡傳輸中,是將文件分塊進行傳輸的,即將文件分割為固定大小的數據塊。在進行云環境下的數據備份時,為了提高并行效率,用戶本地節點的操作系統可以設置多個上傳線程,每個上傳線程控制一個上傳隊列,而每個上傳隊列可以控制多個文件的上傳備份;同理,在進行云環境下的數據恢復時,用戶本地節點的操作系統可以設置多個下載線程,每個下載線程控制一個下載隊列,而每個下載隊列可以控制多個文件的下載恢復。
[0098]在所述數據備份和數據恢復過程中,在每個網絡節點單獨提供一個存儲區域,用于存儲其他網絡節點的備份數據;當其他網絡節點提出數據恢復請求時,從該存儲區域向提出請求的網絡節點恢復數據。當然,在一些情況下,所述容災冗余存儲中心也可以作為網絡數據備份和數據恢復的目標地址。
[0099]云環境下的每個網絡節點具有的能夠提供數據備份功能的存儲區域稱為數據備份區,并且每個網絡節點還具有一個備份列表。具體地:
[0100]每個網絡節點的數據備份區的大小是按照該網絡節點的實際情況進行設定的。例如:如果網絡節點是一個具有大量存儲空間的文件服務器,那么很顯然,該網絡節點可以提供一個較大容量的數據備份區,為云環境下的眾多其他網絡節點進行數據備份服務;而對于一些個人網絡終端,比如個人電腦或者筆記本電腦,其存儲空間較有限,那個可以提供一個較小容量的數據備份區。
[0101]雖然每個網絡節點的數據備份區的大小不盡相同,但是其進行數據備份的過程是完全相同的,每個網絡節點的數據備份區都用于備份來自其他網絡節點的備份數據文件,并且所述數據備份區中的所有備份數據文件均以固定大小的備份數據塊的格式存儲。
[0102]并且為了防止在備份數據時,作為目標節點的網絡節點的數據備份區的空間溢出,每個網絡節點可以根據實際情況為其數據備份區設置一個防止溢出的閾值[如如,在其他網絡節點向該網絡節點備份數據時,一旦發現作為數據備份的目標節點的網絡節點的數據備份區的剩余存儲空間小于或等于預先設定的閾值1」10如時,則禁止向該網絡節點進行數據備份。所述閾值的取值可以設置為為當前網絡節點的數據備份區總存儲容量的5%?15%,優選地,可以設置為10%。
[0103]此外,為了對數據備份的過程進行記錄,每個網絡節點還具有一個備份列表,所述備份列表記錄了所述數據備份區中每個文件的備份時間、文件信息和校驗值,所述文件信息包括該文件的文件名、文件大小和分塊信息。
[0104]圖2介紹了本發明云環境下的網絡數據備份的基本流程。
[0105]如圖2所示,本發明提出的一種數據備份方法可實現云環境下的網絡數據備份,所述云環境下的網絡數據備份過程包括如下步驟:
[0106]數據備份步驟1:接收用戶本地節點的數據備份請求,所述數據備份請求攜帶待備份數據中每個文件的最新修改時間和最新備份時間;
[0107]數據備份步驟2:濾除待備份數據中最新修改時間早于最新備份時間的文件;
[0108]數據備份步驟3:將待備份數據進行壓縮;
[0109]數據備份步驟4:將壓縮的數據進行加密;
[0110]數據備份步驟5:選擇云環境下的網絡節點作為數據備份的目標節點,將待備份數據上傳至所選擇的目標節點;
[0111]數據備份步驟6:所選擇的目標節點接收到待備份數據后,對數據依次進行解密和解壓縮,將解壓縮后的數據存儲在該目標節點的數據備份區中。
[0112]上述步驟中的壓縮算法、加密算法都是預先定義的,并由云環境下的所有網絡節點共享。
[0113]所述云環境下的網絡數據恢復過程包括如下步驟:
[0114]數據恢復步驟1:接收用戶本地節點的數據恢復請求,所述數據恢復請求中包含待恢復數據的文件名;
[0115]數據恢復步驟I1:選擇云環境下的網絡節點作為用于數據恢復的目標節點,將待恢復數據從所選擇的目標節點下載至用戶本地節點;
[0116]數據恢復步驟II1:將下載的待恢復數據進行解密;
[0117]數據恢復步驟IV:將解密的數據進行解壓縮;
[0118]數據恢復步驟V:根據解密和解壓縮后的數據,獲得待恢復數據中的文件;
[0119]上述步驟中的解密算法、解壓縮算法都是預先定義的,并由云環境下的所有網絡節點共享。
[0120]以上只是簡單介紹了云環境下的網絡數據備份和數據恢復的最基本流程,下面對上述數據備份和數據恢復過程進行進一步的限定。
[0121]在所述云環境下的網絡數據備份過程中,還包括以下步驟:
[0122]步驟11:驗證用戶身份的有效性和操作權限;其中,所述操作權限包括:上傳、下載、創建、修改、復制、刪除、查看、以及搜索;
[0123]如果用戶身份經驗證為無效,則鎖定用戶的所有操作權限;
[0124]如果用戶身份經驗證為有效,但不具備上傳權限,則禁止用戶進行云環境下的網絡數據備份,向用戶發出提示;
[0125]步驟12:對用戶的待備份數據中的每個文件進行安全掃描,如果發現某個文件中含有禁止上傳的內容,則將該文件攔截和標記,向用戶發出提示;同時禁止該文件進行云環境下的網絡數據備份;
[0126]所述禁止上傳的內容包括:違法數據、不良數據、有害數據,或者由于安全保密的原因而不適宜網絡備份的數據;
[0127]步驟13:記錄用戶的網絡數據備份行為的備份日志信息,所述備份日志信息包括:
[0128]用戶節點的網絡標識、用戶名、操作權限、是否完成全部備份的標識、以及每個備份文件的文件信息;
[0129]其中,每個備份文件的文件信息包括:文件名、文件的備份時間、文件格式、文件大小、文件的校驗值、文件是否禁止上傳的標識、文件是否完成備份的標識。
[0130]所述云環境下的網絡數據恢復過程中,還包括以下步驟:
[0131]步驟附:驗證用戶身份的有效性和操作權限;其中,所述操作權限包括:上傳、下載、創建、修改、復制、刪除、查看、以及搜索;
[0132]如果用戶身份經驗證為無效,則鎖定用戶的所有操作權限;
[0133]如果用戶身份經驗證為有效,但不具備下載權限,則禁止用戶進行云環境下的網絡數據恢復,向用戶發出提示;
[0134]步驟吧:對用戶獲得的每個文件進行安全掃描,如果發現某個文件中含有禁止的內容,則將該文件攔截和標記,向用戶發出提示;
[0135]所述禁止的內容包括:違法數據、不良數據、有害數據、和/或可能泄露用戶個人隱私的數據;
[0136]步驟吧:記錄用戶的網絡數據恢復行為的恢復日志信息,所述恢復日志信息包括:
[0137]用戶節點的網絡標識、用戶名、操作權限、恢復開始時間、恢復結束時間、是否完成全部恢復的標識、以及每個恢復文件的文件信息;
[0138]其中,每個恢復文件的文件信息包括:文件名、文件格式、文件大小、文件下載恢復來源地址、文件的校驗值、文件恢復開始時間、文件恢復結束時間、文件是否完成恢復的標識。
[0139]本發明中,通過云環境中的云控制中心和容災冗余存儲中心對云環境下的數據備份和恢復進行全局控制。所述容災冗余存儲中心3^6社61~可以對數據備份過程中的大文件進行冗余備份,具體地,用閾值代表網絡節點的數據備份區中允許存儲的單個文件所占空間的最大值。如果用戶的所述待備份數據中的文件大小超過該閾值1^111狀,則所述容災冗余存儲中心3^611將進行同步的冗余備份。
[0140]具體地,對于云環境下的數據備份過程:
[0141]所述云控制中心動態擁有一個網絡節點的備份服務質量列表冊」181:,該備份服務質量列表冊」包括所有!1個網絡節點能夠提供的數據備份的備份服務質量評分;所述云控制中心¢:-06061'定期測試所有!1個網絡節點能夠提供數據備份的備份服務質量評分,更新維護所述備份服務質量列表冊」10,并將所有個網絡節點按其能夠提供數據備份的備份服務質量評分從高至低排序。
[0142]所述云控制中心對云環境下的數據備份進行全局控制過程包括以下步驟:
[0143]步驟冊1:所述云控制中心接收到用戶的數據備份請求后,依次對所述待備份數據中的每個文件執行下述重復性過濾:
[0144]首先,計算待備份數據中當前文件的校驗值;
[0145]其次,查詢所有其他網絡節點的數據備份區中是否存在同名文件;
[0146]若存在,則將用戶本地節點中該文件的校驗值與查詢到的其他網絡節點的數據備份區中的同名文件的校驗值進行比較;
[0147]如果校驗值相同,表示兩個文件完全相同,不需要備份該文件;
[0148]所述校驗值可以是哈希值或105值;
[0149]步驟082:所述云控制中心'查詢所述備份服務質量列表冊」181:,按照網絡節點能夠提供數據備份的備份服務質量評分從高至低的順序選擇評分最高的一個網絡節點作為數據備份的目標節點;
[0150]步驟冊3:如果當前目標節點的數據備份區的容量能夠保證完成所述數據備份請求中所有文件的備份,則將所述數據備份請求中的所有文件備份至當前目標節點,然后結束;否則,轉到步驟邸4 ;
[0151]步驟冊4:當發現當前目標節點的數據備份區的剩余存儲空間小于或等于閾值乙110(16時,停止向當前目標節點進行數據備份,刪除當前目標節點中備份中斷的文件;然后,按照網絡節點能夠提供數據備份的備份服務質量評分從高至低的順序選擇下一個網絡節點作為下一目標節點,將當前目標節點中備份中斷的文件重新備份至下一目標節點,并將剩余的未備份文件繼續備份至所述下一目標節點;
[0152]步驟冊5:以此類推,直至完成所述數據備份請求中所有文件的備份;
[0153]所述容災冗余存儲中心3^6111:61'可以結合閾值1^111狀的比較判斷,對用戶的所述待備份數據中的大文件進行同步的冗余備份,具體地:
[0154]如果所述待備份數據中存在大小大于閾值[111%的文件,則在向作為數據備份的目標節點的網絡節點備份該文件的同時,將該文件同步鏡像拷貝至所述容災冗余存儲中心3—0611 七 61 ;
[0155]具體地,對于云環境下的數據恢復過程:
[0156]所述容災冗余存儲中心3^6111:61'可以結合閾值1^111狀的比較判斷,對用戶的所述待恢復數據中的大文件進行恢復,包括:
[0157]如果所述待恢復數據中存在大小大于閾值的文件,則用戶本地節點將直接從所述容災冗余存儲中心3^6111:61~下載恢復該文件;
[0158]所述云控制中心對云環境下的數據恢復進行全局控制過程包括以下步驟:
[0159]步驟職1:所述云控制中心接收到用戶的數據恢復請求后,根據所述數據恢復請求中包含的待恢復數據中的每個文件名,查詢所述容災冗余存儲中心中是否存在該文件的數據備份;如果存在,則從所述容災冗余存儲中心下載恢復所述文件;
[0160]步驟職2:對于所述數據恢復請求中的未恢復文件,所述云控制中心按照所述數據恢復請求中包含的每個未恢復文件的文件名,依次查詢所有其他網絡節點的數據備份區中是否存在該未恢復文件的數據備份;
[0161]如果發現一個網絡節點的數據備份區中存在該未恢復文件的數據備份,則將該網絡節點的地址信息以及該網絡節點的備份列表中記錄的該文件的備份時間發送給請求數據恢復的用戶本地節點;
[0162]步驟:所述用戶本地節點根據所述云控制中心'發送的所述未恢復文件所在的網絡節點的地址信息,從所述網絡節點下載恢復所述未恢復文件,直至完成所述數據恢復請求;
[0163]其中,在步驟(--中,如果一個未恢復文件具有時間不同的多個數據備份,則提示用戶根據該文件的備份時間選擇性恢復該文件;如果用戶未作出選擇,則默認自動選擇恢復該文件的最新備份。
[0164]優選地,在步驟5中,所述將待備份數據上傳至所選擇的目標節點包括:用戶本地節點依次將用戶的待備份數據中每個文件的所有文件分塊上傳至作為數據備份的目標節點的網絡節點,具體地:
[0165]步驟5.1:在用戶本地節點開辟一塊字節數為[的內存作為發送緩沖池,用于存儲待發送數據塊;
[0166]步驟5.2:依次將用戶的待備份數據中的每個文件按照固定字節數10劃分成文件分塊形成數據塊,將所述數據塊依次存入發送緩沖池;若某個文件最后一塊數據字節數不足10,也作為一個數據塊讀取;
[0167]步驟5.3:從發送緩沖池中讀取數據塊,依次發送至所述作為數據備份的目標節點的網絡節點,直至所述待備份數據全部發送完畢。
[0168]優選地,在步驟5.2中:
[0169]所述數據塊的大小10的取值范圍為:161(8 ^ 10 ^ 818 ;
[0170]所述發送緩沖池的長度I的取值范圍如下:
[0171]^161(8^1(^ 2561(8 ^,1 = 32^0:
[0172]當256詘〈10 彡 118 時,I = 16禮0 ;
[0173]當118〈10 彡 418 時,I = 8*10 ;
[0174]當418〈10 彡 1618 時,I = 4*10。
[0175]對于云環境下的網絡數據備份過程,所述網絡節點1的備份服務質量評分81計算如下:
[0176]81 =亡抑處衫氺(111)公式(1)
[0177]上述變量中,對于網絡節點1 為備份訪問頻率,^為網絡節點的數據備份區的可用存儲空間容量,0為叩11運算處理能力,8為網絡傳輸速度,III為文件備份失敗率,?為服務付費標準。所述網絡節點1的備份服務質量評分81的初始值可以設置為0。
[0178]所述云控制中心'使用基于概率統計的方法,以固定的周期I定期檢測每個作為數據備份的目標節點的網絡節點能夠提供數據備份的備份服務質量評分,以便篩除備份服務質量評分異常的網絡節點,從而提高云環境下的網絡數據備份效率。假設81表示網絡節點1的備份服務質量評分,網絡節點的總數為II,該方法包括以下步驟:
[0179]步驟81:將所有II個網絡節點能夠提供數據備份的備份服務質量評分81,82,…81,…,811構建為一個備份服務質量評分向量3 = (81, 82,…81,…,811);
[0180]如上所述,所有網絡節點能夠提供數據備份的備份服務質量評分的初始值都是0,并且所述備份服務質量評分可以隨著時間的變化而變化。
[0181]在云環境下,網絡節點的總數可能會出現變化,對于新增/退出的網絡節點,可以在所述備份服務質量評分向量3中實時增加/刪除該網絡節點所對應的備份服務質量評分;使得所述備份服務質量評分向量3中的分量的數量等于云環境下的網絡節點數量。具體地,如果一個網絡節點退出云環境,則應刪除該網絡節點在所有周期的備份服務質量評分向量3中對應的備份服務質量評分。
[0182]步驟82:按照周期I定期生成所述備份服務質量評分向量3的時間序列8(1),8 (2),…8 0)…,其中,3 0) = (81 0),82 0),…,81 0),…,如 0)),8 0)表示在第』個周期的備份服務質量評分向量,810)表示網絡節點1在第』個周期的備份服務質量評分;
[0183]步驟83:按照周期I定期執行以下步驟:
[0184]在下面的公式中,符號“ ? ”表示系數與向量相乘,即以系數乘以向量中的每個分量;符號“ I ”表示對向量中的每個分量取絕對值。
[0185]步驟83.1:對于在第』個周期的備份服務質量評分向量3 0),定義3 0)的預測向量為0),8 0)的一級誤差向量為£8 0),計算如下:
[0186]=入 1.3 0) +(1-入 1).93 0-1)公式⑵
[0187]£80) = 130)-930-1)1公式⑶
[0188]其中,一級誤差系數\ 1優選為0.25,也可以根據具體的實際情況來設置^3(0)=5(1);
[0189]步驟83.2:根據第』個周期的3 0)的一級誤差向量為£8 0),計算3 0)的二級誤差向量如下:
[0190]£8-2 0) = | 入 2.£8 0.) + (1 -人 2).£8)0-1) |公式⑷
[0191]其中,二級誤差系數入2優選為0.15,也可以根據具體的實際情況來設置;28—2(0) = 0 ;
[0192]步驟83.3:根據第』個周期的3 0)的二級誤差向量0),計算3 0)的三級誤差向量如下:
[0193]£8-3 0) = | 入 3.£8.2 0) + (1 -人 3).£8.3 0-1) |公式(5)
[0194]其中,三級誤差系數入3優選為0.05,也可以根據具體的實際情況來設置;28—3(0) = 0 ;
[0195]步驟83.4:將第』個周期的30)的三級誤差向量£130)中的每一個分量與預先設定的備份服務誤差閾值1—28相比較;
[0196]如果存在超過備份服務誤差閾值1^28的分量,則確定該分量所對應網絡節點在該周期的備份服務質量評分為異常;并且
[0197]如果一個網絡節點連續兩個周期的備份服務質量評分為異常,則將該網絡節點加入備份節點黑名單列表同時,將該網絡節點的數據備份區中的備份數據拷貝至所述容災冗余存儲中心3^611
[0198]在本發明中,通過三級誤差向量的計算,可以減少直接、簡單的誤差向量比較的誤差,提高檢測的精確度。
[0199]對于上述備份服務誤差閾值1^28,可以根據實際情況來具體設定,具體的設置原則為:通過該備份服務誤差閾值的設置,使得云環境下所有網絡節點中,備份服務質量評分為異常的節點數量控制在一個合理的范圍內。例如,使得異常的網絡節點數量始終控制在該云環境下網絡節點總數的20%以內。
[0200]所述步驟83還可以進一步包括:
[0201]步驟83.5:所述云控制中心以周期I定期掃描所述備份節點黑名單列表如果發現備份服務質量評分高于閾值18^機的網絡節點,則將該網絡節點從所述備份節點黑名單列表中刪除。
[0202]類似地,對于上述閾值1^28,也可以根據實際情況來具體設定,具體的設置原則為:通過該閾值的設置,使得云環境下,所述備份節點黑名單列表中的節點數量控制在一個合理的范圍內。例如,使得所述備份節點黑名單列表8」3匕4中的節點數量始終控制在該云環境下網絡節點總數的10%以內。
[0203]以上實施方式僅用于說明本發明,而并非對本發明的限制,有關【技術領域】的普通技術人員,在不脫離本發明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術方案也屬于本發明的范疇,本發明的專利保護范圍應由權利要求限定。
【權利要求】
1.一種數據備份方法,可實現云環境下的網絡數據備份,其特征在于:該方法包括以下步驟: 步驟1:接收用戶本地節點的數據備份請求,所述數據備份請求攜帶待備份數據中每個文件的最新修改時間和最新備份時間; 步驟2:濾除待備份數據中最新修改時間早于最新備份時間的文件; 步驟3:將待備份數據進行壓縮; 步驟4:將壓縮的數據進行加密; 步驟5:選擇云環境下的網絡節點作為數據備份的目標節點,將待備份數據上傳至所選擇的目標節點; 步驟6:所選擇的目標節點接收到待備份數據后,對數據依次進行解密和解壓縮,將解壓縮后的數據存儲在該目標節點的數據備份區中; 其中,所述壓縮算法、加密/解密算法都是預先定義的,并由云環境下的所有網絡節點共享。
2.根據權利要求1所述的數據備份方法,其特征在于: 云環境下的每個網絡節點都具有一個數據備份區和一個備份列表; 所述數據備份區用于備份來自其他網絡節點的備份數據文件,所述數據備份區中的所有備份數據文件均以固定大小的備份數據塊的格式存儲; 當所述網絡節點的數據備份區的剩余存儲空間小于或等于閾值T_node時,禁止向該網絡節點進行數據備份; 閾值T_node的取值可以為當前網絡節點的數據備份區總存儲容量的10% ; 所述備份列表記錄了所述數據備份區中每個文件的備份時間、文件信息和校驗值,所述文件信息包括該文件的文件名、文件大小和分塊信息。
3.根據權利要求2所述的數據備份方法,其特征在于:在步驟3之前還包括以下步驟: 步驟Ml:驗證用戶身份的有效性和操作權限;其中,所述操作權限包括:上傳、下載、創建、修改、復制、刪除、查看、以及搜索; 如果用戶身份經驗證為無效,則鎖定用戶的所有操作權限; 如果用戶身份經驗證為有效,但不具備上傳權限,則禁止用戶進行云環境下的網絡數據備份,向用戶發出提示; 步驟M2:對用戶的待備份數據中的每個文件進行安全掃描,如果發現某個文件中含有禁止上傳的內容,則將該文件攔截和標記,向用戶發出提示;同時禁止該文件進行云環境下的網絡數據備份; 所述禁止上傳的內容包括:違法數據、不良數據、有害數據,或者由于安全保密的原因而不適宜網絡備份的數據; 步驟M3:記錄用戶的網絡數據備份行為的備份日志信息,所述備份日志信息包括:用戶節點的網絡標識、用戶名、操作權限、是否完成全部備份的標識、以及每個備份文件的文件信息; 其中,每個備份文件的文件信息包括:文件名、文件的備份時間、文件格式、文件大小、文件的校驗值、文件是否禁止上傳的標識、文件是否完成備份的標識。
4.根據權利要求3所述的數據備份方法,其特征在于:在所述步驟5中,利用云環境中的云控制中心C_center和容災冗余存儲中心S_center對云環境下的數據備份進行全局控制,其中: 所述云控制中心C_center動態擁有一個網絡節點的備份服務質量列表QB_list,該備份服務質量列表QB_list包括所有η個網絡節點能夠提供的數據備份的備份服務質量評分;所述云控制中WC_center定期測試所有η個網絡節點能夠提供數據備份的備份服務質量評分,更新維護所述備份服務質量列表QB_list,并將所有η個網絡節點按其能夠提供數據備份的備份服務質量評分從高至低排序; 所述云控制中心C_center對云環境下的數據備份進行全局控制過程包括以下步驟:步驟QBl:所述云控制中心C_center接收到用戶的數據備份請求后,依次對所述待備份數據中的每個文件執行下述重復性過濾: 首先,計算待備份數據中當前文件的校驗值; 其次,查詢所有其他網絡節點的數據備份區中是否存在同名文件; 若存在,則將用戶本地節點中該文件的校驗值與查詢到的其他網絡節點的數據備份區中的同名文件的校驗值進行比較; 如果校驗值相同,表示兩個文件完全相同,不需要備份該文件; 所述校驗值可以是哈希值或MD5值; 步驟QB2:所述云控制中WC_center查詢所述備份服務質量列表QB_list,按照網絡節點能夠提供數據備份的備份服務質量評分從高至低的順序選擇評分最高的一個網絡節點作為數據備份的目標節點; 步驟QB3:如果當前目標節點的數據備份區的容量能夠保證完成所述數據備份請求中所有文件的備份,則將所述數據備份請求中的所有文件備份至當前目標節點,然后結束;否貝U,轉到步驟QB4 ; 步驟QB4:當發現當前目標節點的數據備份區的剩余存儲空間小于或等于閾值T_node時,停止向當前目標節點進行數據備份,刪除當前目標節點中備份中斷的文件;然后,按照網絡節點能夠提供數據備份的備份服務質量評分從高至低的順序選擇下一個網絡節點作為下一目標節點,將當前目標節點中備份中斷的文件重新備份至下一目標節點,并將剩余的未備份文件繼續備份至所述下一目標節點; 步驟QB5:以此類推,直至完成所述數據備份請求中所有文件的備份; 閾值T_max代表網絡節點的數據備份區中允許存儲的單個文件所占空間的最大值; 所述容災冗余存儲中心S_center可以結合閾值T_max的比較判斷,對用戶的所述待備份數據中的大文件進行同步的冗余備份,具體地: 如果所述待備份數據中存在大小大于閾值T_max的文件,則在向作為數據備份的目標節點的網絡節點備份該文件的同時,將該文件同步鏡像拷貝至所述容災冗余存儲中WS_center。
5.根據權利要求4所述的數據備份方法,其特征在于:在步驟5中,所述將待備份數據上傳至所選擇的目標節點包括:用戶本地節點依次將用戶的待備份數據中每個文件的所有文件分塊上傳至作為數據備份的目標節點的網絡節點,具體地: 步驟5.1:在用戶本地節點開辟一塊字節數為L的內存作為緩沖池,用于存儲待發送數據塊; 步驟5.2:依次將用戶的待備份數據中的每個文件按照固定字節數LO劃分成文件分塊形成數據塊,將所述數據塊依次存入緩沖池;若某個文件最后一塊數據字節數不足L0,也作為一個數據塊讀取; 步驟5.3:從緩沖池中讀取數據塊,依次發送至所述作為數據備份的目標節點的網絡節點,直至所述待備份數據全部發送完畢。
6.根據權利要求5所述的數據備份方法,其特征在于,在步驟5.2中: 所述數據塊的大小LO的取值范圍為:16KB ^ LO ^ 8MB ; 所述緩沖池的長度L的取值范圍如下:
當 16KB ^ LO ^ 256KB 時,L = 32*L0 ;
當 256KB〈L0 彡 IMB 時,L = 16*L0 ;
當 1MB〈L0 彡 4MB 時,L = 8*L0 ;
當 4MB〈L0 彡 16MB 時,L = 4*L0。
7.根據權利要求6所述的數據備份方法,其特征在于: 所述網絡節點i的備份服務質量評分Si計算如下: si = f*v*c*s* (In) 2/p 公式(I) 上述變量中,對于網絡節點1:f為備份訪問頻率,V為網絡節點的數據備份區的可用存儲空間容量,C為cpu運算處理能力,S為網絡傳輸速度,m為文件備份失敗率,P為服務付費標準。
8.根據權利要求1-7中任一項所述的數據備份方法,其特征在于:所述云控制中心C_center以周期T定期篩除備份服務質量評分異常的網絡節點,包括以下步驟: 步驟B1:將所有η個網絡節點能夠提供數據備份的備份服務質量評分sl,s2,…Si,…,sn構建為一個備份服務質量評分向量S = (sl, s2, …,sn);其中,si表示網絡節點i的備份服務質量評分; 步驟B2:按照周期T定期生成所述備份服務質量評分向量S的時間序列S (I),S (2),…s(j)…,其中,S(j) = (Si (j), s2(j),…,Si (j),…,sn(j)), S(j)表示在第j個周期的備份服務質量評分向量,si (j)表示網絡節點i在第j個周期的備份服務質量評分; 步驟B3:按照周期T定期執行以下步驟: 步驟B3.1:對于在第j個周期的備份服務質量評分向量S(j),定義S(j)的預測向量為PS(j),S(J)的一級誤差向量為EB (j),計算如下:
PS(J) = λ I.S(j) + (1-A I).PS(j-l)公式(2) EB(j) = |S(j)-PS(j-l) I 公式(3) 其中,一級誤差系數λ I為0.25,PS (O) =S(I); 步驟Β3.2:根據第j個周期的S(j)的一級誤差向量為EB(j),計算S(j)的二級誤差向量EB_2 (j)如下:
EB_2 (j) = I λ 2.EB (j) + (1- λ 2).ΕΒ_2 (j-1) | 公式(4) 其中,二級誤差系數λ2為0.15,EB_2(0) = O ; 步驟B3.3:根據第j個周期的S(j)的二級誤差向量EB_2(j),計算S(j)的三級誤差向量EB_3 (j)如下:
EB_3 (j) = I λ 3.ΕΒ_2 (j) + (1- λ 3).ΕΒ_3 (j-Ι) | 公式(5) 其中,三級誤差系數λ3為0.05,EB_3(0) = O ; 步驟B3.4:將第j個周期的S(j)的三級誤差向量EB_3(j)中的每一個分量與預先設定的備份服務誤差閾值T_EB相比較; 如果存在超過備份服務誤差閾值T_EB的分量,則確定該分量所對應網絡節點在該周期的備份服務質量評分為異常;并且 如果一個網絡節點連續兩個周期的備份服務質量評分為異常,則將該網絡節點加入備份節點黑名單列表B_black;同時,將該網絡節點的數據備份區中的備份數據拷貝至所述容災冗余存儲中心S_center。
9.根據權利要求8所述的數據備份方法,其特征在于:所述步驟B3還包括: 步驟B3.5:所述云控制中心C_center以周期T定期掃描所述備份節點黑名單列表B_black,如果發現備份服務質量評分高于閾值TB_out的網絡節點,則將該網絡節點從所述備份節點黑名單列表B_black中刪除。
【文檔編號】H04L29/08GK104410683SQ201410675081
【公開日】2015年3月11日 申請日期:2014年11月21日 優先權日:2014年11月21日
【發明者】羅陽, 陳虹宇, 王峻嶺 申請人:四川神琥科技有限公司