一種數(shù)據(jù)備份方法及裝置和數(shù)據(jù)恢復方法及裝置制造方法
【專利摘要】本申請?zhí)峁┮环N數(shù)據(jù)備份方法及裝置和數(shù)據(jù)恢復方法及裝置,首先對待備份數(shù)據(jù)進行序列分割生成子序列集,并將子序列集中的各個元素被其所屬子序列類別對應的類別符號替換生成符號化序列,實現(xiàn)對待備份數(shù)據(jù)的一次壓縮,然后通過分別與各個每個最大頻率連續(xù)子序列對應的序列符號對符號化序列進行編碼,生成與符號化序列對應的編碼序列,實現(xiàn)對待備份數(shù)據(jù)的二次壓縮,進而通過將子序列類別與代表子序列之間的對應關系、最大頻繁連續(xù)子序列與序列符號之間的對應關系及經(jīng)過壓縮后的編碼序列作為備份數(shù)據(jù),可有效避免現(xiàn)有技術因備份數(shù)據(jù)的數(shù)據(jù)量較大,而導致的數(shù)據(jù)恢復效率低的問題。
【專利說明】一種數(shù)據(jù)備份方法及裝置和數(shù)據(jù)恢復方法及裝置
【技術領域】
[0001]本申請涉及數(shù)據(jù)備份【技術領域】,特別是涉及一種數(shù)據(jù)備份方法及裝置和數(shù)據(jù)恢復方法及裝置。
【背景技術】
[0002]隨著大數(shù)據(jù)時代的來臨,數(shù)據(jù)規(guī)模越來越大,海量數(shù)據(jù)的存儲管理帶來了一定的風險,因災難的發(fā)生所造成的數(shù)據(jù)丟失,將可能導致巨大經(jīng)濟的損失。
[0003]現(xiàn)有技術通常采用數(shù)據(jù)備份的方法進行防災,以實現(xiàn)當災難發(fā)生時,通過數(shù)據(jù)恢復的方式,保證數(shù)據(jù)的安全性。傳統(tǒng)的數(shù)據(jù)備份方法通常是直接對數(shù)據(jù)進行完全的備份(如:直接通過復制待備份數(shù)據(jù)的方式得到備份數(shù)據(jù))。
[0004]但是,該方法在災難發(fā)生,利用備份數(shù)據(jù)進行數(shù)據(jù)恢復時,通常會因備份數(shù)據(jù)的數(shù)據(jù)量較大,導致數(shù)據(jù)恢復慢、恢復效率低的問題。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本申請?zhí)峁┮环N數(shù)據(jù)備份方法及裝置和數(shù)據(jù)恢復方法及裝置,以解決現(xiàn)有技術因備份數(shù)據(jù)的數(shù)據(jù)量較大,而導致的數(shù)據(jù)恢復效率低的問題。
[0006]為了實現(xiàn)上述目的,本發(fā)明實施例提供的技術方案如下:
[0007]一種數(shù)據(jù)備份方法,包括:
[0008]對待備份數(shù)據(jù)進行序列分割,利用分割得到的各個子序列生成與所述待備份數(shù)據(jù)對應的子序列集;
[0009]對所述子序列集中的各個元素進行聚類,利用每個所述元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與所述子序列集對應的符號化序列;
[0010]計算分別與每個所述子序列類別對應的代表子序列;
[0011]獲取所述符號化序列中的各個最大頻繁連續(xù)子序列;
[0012]利用分別與每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號對所述符號化序列進行編碼,生成與所述符號化序列對應的編碼序列;
[0013]將子序列類別與代表子序列之間的對應關系、最大頻繁連續(xù)子序列與序列符號之間的對應關系及編碼序列作為備份數(shù)據(jù)。
[0014]優(yōu)選的,所述對所述子序列集中的各個元素進行聚類,利用每個所述元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與所述子序列集對應的符號化序列,包括:
[0015]通過預先設置的動態(tài)時間彎曲算法計算所述子序列集中各個元素之間的距離矩陣;
[0016]利用所述距離矩陣及預先設置的層次聚類算法,對所述子序列集中的各個元素進行聚類;
[0017]利用每個所述元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與所述子序列集對應的符號化序列。
[0018]優(yōu)選的,所述計算分別與每個所述子序列類別對應的代表子序列,包括針對每個所述子序列類別執(zhí)行以下過程:
[0019]獲取所述子序列類別中的各個子序列;
[0020]分別計算所述子序列類別中的每個子序列到該子序列類別中的各個其他子序列之間的距離和;
[0021]將到所述子序列類別中的各個其他子序列之間的距離和的值最小的子序列,確定為與所述子序列類別對應的代表子序列。
[0022]優(yōu)選的,所述獲取所述符號化序列中的各個最大頻繁連續(xù)子序列,包括:
[0023]利用預先設置的基于投影數(shù)據(jù)庫的頻繁子序列挖掘算法計算所述符號化序列中的各個頻繁連續(xù)子序列;
[0024]根據(jù)預先設置的最大頻繁連續(xù)子序列獲取規(guī)則,從各個所述頻繁連續(xù)子序列中獲取各個最大頻繁連續(xù)子序列。
[0025]優(yōu)選的,所述根據(jù)預先設置的最大頻繁連續(xù)子序列獲取規(guī)則,從各個所述頻繁連續(xù)子序列中獲取各個最大頻繁連續(xù)子序列,包括:
[0026]Al、從各個所述頻繁連續(xù)子序列中獲取長度為i的各個頻繁連續(xù)子序列;
[0027]B1、判斷參考序列是否為某個長度為i的頻繁連續(xù)子序列中的部分字符串;
[0028]Cl、當否時,將該參考序列確定為目標值;
[0029]D1、判斷各個所述頻繁連續(xù)子序列中是否存在長度為i+Ι的頻繁連續(xù)子序列;
[0030]E1、當存在時,將長度為i的各個所述頻繁連續(xù)子序列更新為所述參考序列,且令i' =i+l,將i'確定為新的i,返回執(zhí)行Al ;
[0031]F1、當不存在時,將每個所述目標值作為一個最大頻繁連續(xù)子序列。
[0032]優(yōu)選的,利用所述符號化序列中每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號替換該最大頻繁連續(xù)子序列,生成與所述符號化序列對應的編碼序列。
[0033]優(yōu)選的,利用所述符號化序列中每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號,及某些最大頻繁連續(xù)子序列中的部分字符串對應的唯一的序列符號,生成與所述符號化序列對應的編碼序列。
[0034]優(yōu)選的,所述利用所述符號化序列中每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號,及某些最大頻繁連續(xù)子序列中的部分字符串對應的唯一的序列符號,生成與所述符號化序列對應的編碼序列,包括:
[0035]A2、依據(jù)所述符號化序列中元素的順序從所述符號化序列中讀取一個類別符號放入緩沖器buffer中;
[0036]B2、判斷所述buffer中的類別符號串是否為某個最大頻繁連續(xù)子序列中的部分字符串;當是時,執(zhí)行步驟C2;當否時,執(zhí)行步驟D2;
[0037]C2、判斷buffer的中類別符號串的長度是否等于某個最大頻繁連續(xù)子序列中的字符串的長度,當是時,執(zhí)行F2 ;當否時,執(zhí)行A2 ;
[0038]D2、獲取與所述buffer中除最后一個類別符號的類別符號串對應的唯一的序列符號;
[0039]E2、清空buffer,返回執(zhí)行步驟A2 ;
[0040]F2、獲取與所述buffer中的類別符號串對應的序列符號;
[0041]G2、利用上述步驟A2?F2在執(zhí)行過程中獲取的序列符號,生成編碼序列。
[0042]一種數(shù)據(jù)備份裝置,包括:
[0043]分割單元,用于對待備份數(shù)據(jù)進行序列分割,利用分割得到的各個子序列生成與所述待備份數(shù)據(jù)對應的子序列集;
[0044]第一生成單元,用于對所述子序列集中的各個元素進行聚類,利用每個所述元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與所述子序列集對應的符號化序列;
[0045]計算單元,用于計算分別與每個所述子序列類別對應的代表子序列;
[0046]獲取單元,用于獲取所述符號化序列中的各個最大頻繁連續(xù)子序列;
[0047]第二生成單元,用于利用分別與每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號對所述符號化序列進行編碼,生成與所述符號化序列對應的編碼序列;
[0048]備份數(shù)據(jù)確定單元,用于利用分別與每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號,生成與所述符號化序列對應的編碼序列。
[0049]一種數(shù)據(jù)恢復方法,包括:
[0050]利用預先設置的最大頻繁連續(xù)子序列與序列符號之間的對應關系對預先設置的編碼序列進行譯碼,生成與所述編碼序列對應的符號化序列;
[0051]利用預先設置的子序列類別與代表子序列之間的對應關系,通過代表子序列替換所述符號化序列中與該代表子序列對應的子序列類別對應的類別符號,生成與所述符號化序列對應的待備份數(shù)據(jù)。
[0052]一種數(shù)據(jù)恢復裝置,包括:
[0053]第一恢復單元,用于利用預先設置的最大頻繁連續(xù)子序列與序列符號之間的對應關系對預先設置的編碼序列進行譯碼,生成與所述編碼序列對應的符號化序列;
[0054]第二恢復單元,用于利用預先設置的子序列類別與代表子序列之間的對應關系,通過代表子序列替換所述符號化序列中與該代表子序列對應的子序列類別對應的類別符號,生成與所述符號化序列對應的待備份數(shù)據(jù)。
[0055]本申請?zhí)峁┮环N數(shù)據(jù)備份方法及裝置和數(shù)據(jù)恢復方法及裝置,首先對待備份數(shù)據(jù)進行序列分割生成子序列集,并將子序列集中的各個元素被其所屬子序列類別對應的類別符號替換生成符號化序列,實現(xiàn)對待備份數(shù)據(jù)的一次壓縮,然后通過分別與各個每個最大頻率連續(xù)子序列對應的序列符號對符號化序列進行編碼,生成與符號化序列對應的編碼序列,實現(xiàn)對待備份數(shù)據(jù)的二次壓縮,進而通過將子序列類別與代表子序列之間的對應關系、最大頻繁連續(xù)子序列與序列符號之間的對應關系及經(jīng)過壓縮后的編碼序列作為備份數(shù)據(jù),可有效避免現(xiàn)有技術因備份數(shù)據(jù)的數(shù)據(jù)量較大,而導致的數(shù)據(jù)恢復效率低的問題。
【專利附圖】
【附圖說明】
[0056]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0057]圖1為本申請實施例一提供的一種數(shù)據(jù)備份方法流程圖;
[0058]圖2為本申請實施例二提供的一種數(shù)據(jù)備份裝置的結構示意圖;
[0059]圖3為本申請實施例三提供的一種數(shù)據(jù)恢復方法流程圖;
[0060]圖4為本申請實施例四提供的一種數(shù)據(jù)恢復裝置的結構示意圖。
【具體實施方式】
[0061]下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0062]實施例一:
[0063]圖1為本申請實施例一提供的一種數(shù)據(jù)備份方法流程圖。
[0064]如圖1所示,該方法包括:
[0065]S101、對待備份數(shù)據(jù)進行序列分割,利用分割得到的各個子序列生成與待備份數(shù)據(jù)對應的子序列集。
[0066]在本申請實施例中,優(yōu)選的,當需要對待備份數(shù)據(jù)進行數(shù)據(jù)備份時,首先需要將待備份數(shù)據(jù)看成一個時間序列,然后采用基于滑動窗口的斜率變化分段線性分割時間序列的方法實現(xiàn)對該待備份數(shù)據(jù)的序列分割,具體的,對待備份數(shù)據(jù)進行序列分割的過程如下--給定一個滑動窗口大小W以及一個誤差閾值K,滑動窗口 W沿著時間序列的時間戳移動,每次移動一個點就通過最小二乘回歸計算該滑動窗口中的線段的斜率,并與前一個滑動窗口中的線段的斜率進行比較,如果斜率的改變量超過了誤差閾值K,則一個分割點就被記錄下來,該分割點為上一個滑動窗口最右邊的點,同時,將滑動窗口移至分割點右邊的點,重復執(zhí)行上述過程;如果斜率的改變量沒有超過誤差閾值K,則原來的斜率值被當前滑動窗口中線段的斜率替代,滑動窗口繼續(xù)向前移動,重復執(zhí)行上述過程;直至該時間序列中的各個點均被遍歷。
[0067]在本申請實施例中,當對待備份數(shù)據(jù)進行序列分割后,會得到與待備份數(shù)據(jù)的數(shù)據(jù)內(nèi)容順序對應的各個子序列,與待備份數(shù)據(jù)的數(shù)據(jù)內(nèi)容順序對應的各個子序列組成的集合即為子序列集。
[0068]S102、對子序列集中的各個元素進行聚類,利用每個元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與子序列集對應的符號化序列。
[0069]在本申請實施例中,優(yōu)選的,當生成與待備份數(shù)據(jù)對應的子序列集后,需對該子序列集中的各個元素進行聚類(即:對子序列集中的各個元素進行分類),然后才利用每個元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與子序列集對應的符號化序列,其中,該過程包括:
[0070]1、通過預先設置的動態(tài)時間彎曲算法計算子序列集中各個元素之間的距離矩陣。[0071 ] 在本申請實施例中,優(yōu)選的,利用預先設置的動態(tài)時間彎曲算法計算得到的距離矩陣包括:子序列集中每個元素到其他各個元素之間的距離。
[0072]在本申請實施例中,預先設置的動態(tài)時間彎曲算法為現(xiàn)有技術,詳細請參見現(xiàn)有技術,在此不做詳細介紹。
[0073]2、利用距離矩陣及預先設置的層次聚類算法,對子序列集中的各個元素進行聚類。
[0074]在本申請實施例中,當計算出子序列集中各個元素之間的距離矩陣后,需要利用該距離矩陣及預先設置的層次聚類算法,對子序列集中的各個元素進行聚類,通過對子序列集中的各個元素進行聚類,可以使得同一子序列類別中的各個元素盡可能的相似,而不同子序列類別中的元素具有明顯差別。
[0075]在本申請實施例中,預先設置的層次聚類算法為現(xiàn)有技術,詳細請參見現(xiàn)有技術,在此不做詳細介紹。
[0076]3、利用每個元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與子序列集對應的符號化序列。
[0077]在本申請實施例中,當對子序列集中的各個元素進行聚類后,分別為每個子序列類別分配一個唯一的類別符號,進而實現(xiàn)利用每個元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與子序列集對應的符號化序列。
[0078]在本申請實施例中,該步驟S102的目的是將子序列集中屬于同一子序列類別的各個元素均用于該子序列類別對應的類別符號表示,進而實現(xiàn)對待備份數(shù)據(jù)的一次壓縮。
[0079]S103、計算分別與每個子序列類別對應的代表子序列。
[0080]在本申請實施例中,優(yōu)選的,在計算分別與每個子序列類別對應的代表子序列的過程中,需針對每個子序列類別均執(zhí)行以下過程:
[0081 ] 1、獲取子序列類別中的各個子序列。
[0082]2、分別計算子序列類別中的每個子序列到該子序列類別中的各個其他子序列之間的距離和。
[0083]在本申請實施例中,優(yōu)選的,針對每個子序列類別均執(zhí)行以下過程:利用預先設置的動態(tài)時間彎曲算法計算該子序列分別到該子序列類別中的各個其他子序列的距離,并計算各個距離的距離和。
[0084]3、將到子序列類別中的各個其他子序列之間的距離和的值最小的子序列,確定為與子序列類別對應的代表子序列。
[0085]S104、獲取符號化序列中的各個最大頻繁連續(xù)子序列。
[0086]在本申請實施例中,優(yōu)選的,獲取符號化序列中的各個最大頻繁連續(xù)子序列包括:
[0087]1、利用預先設置的基于投影數(shù)據(jù)庫的頻繁子序列挖掘算法計算符號化序列中的各個頻繁連續(xù)子序列。
[0088]在本申請實施例中,優(yōu)選的,基于投影數(shù)據(jù)庫的頻繁子序列挖掘算法為現(xiàn)有技術,詳細描述請參見現(xiàn)有技術,在此不做詳細介紹。
[0089]2、根據(jù)預先設置的最大頻繁連續(xù)子序列獲取規(guī)則,從各個頻繁連續(xù)子序列中獲取各個最大頻繁連續(xù)子序列。
[0090]在本申請實施例中,優(yōu)選的,根據(jù)預先設置的最大頻繁連續(xù)子序列獲取規(guī)則,從各個頻繁連續(xù)子序列中獲取各個最大頻繁連續(xù)子序列,包括:
[0091]Al、從各個頻繁連續(xù)子序列中獲取長度為i的各個頻繁連續(xù)子序列。
[0092]在本申請實施例中,優(yōu)選的,初始化i的值為I。
[0093]在本申請實施例中,優(yōu)選的,頻繁連續(xù)子序列是由類別符號組成的字符串,長度i代表組成該頻繁連續(xù)子序列的字符串中的類別符號的個數(shù)。
[0094]B1、判斷參考序列是否為某個長度為i的頻繁連續(xù)子序列中的部分字符串。
[0095]在本申請實施例中,優(yōu)選的,初始化參考序列為步驟Al中獲取到的各個頻繁連續(xù)子序列中的一個。
[0096]在本申請實施例中,優(yōu)選的,當步驟Al中獲取到的某個頻繁連續(xù)子序列為ABCDE,而參考序列為ABCD時,則認為該參考序列是長度為5的頻繁連續(xù)子序列ABCDE中的部分字符串;而當參考序列為AC時,認為該參考序列并不是頻繁連續(xù)子序列ABCDE中的部分字符串O
[0097]Cl、當否時,將該參考序列確定為目標值。
[0098]在本申請實施例中,優(yōu)選的,參考序列為至少一個,當某個參考序列是某個長度為i的頻繁連續(xù)子序列中的部分字符串時,該參考序列不是目標值,此時可以忽略該參考序列不做考慮;當某個參考序列針對每個長度為i的頻繁連續(xù)子序列,均不是其部分字符串時,則確定該參考序列為目標值。
[0099]D1、判斷各個頻繁連續(xù)子序列中是否存在長度為i+Ι的頻繁連續(xù)子序列。
[0100]E1、當存在時,將長度為i的各個頻繁連續(xù)子序列更新為參考序列,且令i'=i+Ι,將i'確定為新的i,返回執(zhí)行Al。
[0101]F1、當不存在時,將每個目標值作為一個最大頻繁連續(xù)子序列。
[0102]S105、利用分別與每個最大頻繁連續(xù)子序列對應的唯一的序列符號對符號化序列進行編碼,生成與符號化序列對應的編碼序列。
[0103]在本申請實施例中,優(yōu)選的,利用分別與每個最大頻繁連續(xù)子序列對應的唯一的序列符號對符號化序列進行編碼,生成與符號化序列對應的編碼序列,包括:利用符號化序列中每個最大頻繁連續(xù)子序列對應的唯一的序列符號替換該最大頻繁連續(xù)子序列,生成與符號化序列對應的編碼序列。
[0104]在本申請實施例中,優(yōu)選的,當執(zhí)行步驟S105時直接為符號化序列中每個最大頻繁連續(xù)子序列分配一個唯一的序列符號,且利用每個最大頻繁連續(xù)子序列對應的唯一的序列符號替換符號化序列中的該最大頻繁連續(xù)子序列,生成與該符號化序列對應的編碼序列。
[0105]在本申請實施例中,優(yōu)選的,利用分別與每個最大頻繁連續(xù)子序列對應的唯一的序列符號,生成與符號化序列對應的編碼序列,包括:利用符號化序列中每個最大頻繁連續(xù)子序列對應的唯一的序列符號,及某些最大頻繁連續(xù)子序列中的部分字符串對應的唯一的序列符號,生成與符號化序列對應的編碼序列,具體的,該過程如下:
[0106]A2、依據(jù)符號化序列中元素的順序從符號化序列中讀取一個類別符號放入buffer中。
[0107]B2、判斷buffer中的類別符號串是否為某個最大頻繁連續(xù)子序列中的部分字符串;當是時,執(zhí)行步驟C2 ;當否時,執(zhí)行步驟D2。
[0108]C2、判斷buffer的中類別符號串的長度是否等于某個最大頻繁連續(xù)子序列中的字符串的長度,當是時,執(zhí)行F2 ;當否時,執(zhí)行A2。
[0109]在本申請實施例中,優(yōu)選的,設置類別符號串的長度為該類別符號串中類別符號的個數(shù)。
[0110]D2、獲取與buffer中除最后一個類別符號的類別符號串對應的唯一的序列符號。
[0111]在本申請實施例中,優(yōu)選的,該buffer中除最后一個類別符號的類別符號串對應的唯一的序列符號為當執(zhí)行步驟D2時,直接為該buffer中除最后一個類別符號的類別符號串分配的一個唯一的序列符號。
[0112]E2、清空buffer,返回執(zhí)行步驟A2。
[0113]F2、獲取與buffer中的類別符號串對應的序列符號。
[0114]在本申請實施例中,優(yōu)選的,該過程中buffer中的類別符號串的長度等于某個最大頻繁連續(xù)子序列,即說明該buffer中的類別符號串為某個最大頻繁連續(xù)子序列。
[0115]G2、利用上述步驟A2?F2在執(zhí)行過程中獲取的序列符號,生成編碼序列。
[0116]在本申請實施例中,優(yōu)選的,按照獲取的序列符號的順序,生成由獲取到的序列符號組合成的編碼序列。
[0117]S106、將子序列類別與代表子序列之間的對應關系、最大頻繁連續(xù)子序列與序列符號之間的對應關系及編碼序列作為備份數(shù)據(jù)。
[0118]在本申請實施例中,優(yōu)選的,利用分別與每個最大頻繁連續(xù)子序列對應的唯一的序列符號對符號化序列進行編碼,生成與符號化序列對應的編碼序列的過程為:利用符號化序列中每個最大頻繁連續(xù)子序列對應的唯一的序列符號替換該最大頻繁連續(xù)子序列,生成與符號化序列對應的編碼序列時,該備份數(shù)據(jù)包括:子序列類別與代表子序列之間的對應關系、最大頻繁連續(xù)子序列與序列符號之間的對應關系及編碼序列。
[0119]在本申請實施例中,優(yōu)選的,利用分別與每個最大頻繁連續(xù)子序列對應的唯一的序列符號對所述符號化序列進行編碼,生成與符號化序列對應的編碼序列的過程為:利用符號化序列中每個最大頻繁連續(xù)子序列對應的唯一的序列符號,及某些最大頻繁連續(xù)子序列中的部分字符串對應的唯一的序列符號,生成與符號化序列對應的編碼序列時,該備份數(shù)據(jù)包括:子序列類別與代表子序列之間的對應關系、最大頻繁連續(xù)子序列與序列符號之間的對應關系及編碼序列,其中,最大頻繁連續(xù)子序列與序列符號之間的對應關系中不僅包括最大頻繁連續(xù)子序列與序列符號之間的對應關系,還包括某些最大頻繁連續(xù)子序列中的部分符號串與序列符號之間的對應關系。
[0120]本申請?zhí)峁┮环N數(shù)據(jù)備份方法,該方法首先對待備份數(shù)據(jù)進行序列分割生成子序列集,并將子序列集中的各個元素被其所屬子序列類別對應的類別符號替換生成符號化序列,實現(xiàn)對待備份數(shù)據(jù)的一次壓縮,然后通過分別與各個每個最大頻率連續(xù)子序列對應的序列符號對符號化序列進行編碼,生成與符號化序列對應的編碼序列,實現(xiàn)對待備份數(shù)據(jù)的二次壓縮,進而通過將子序列類別與代表子序列之間的對應關系、最大頻繁連續(xù)子序列與序列符號之間的對應關系及經(jīng)過壓縮后的編碼序列作為備份數(shù)據(jù),可有效避免現(xiàn)有技術因備份數(shù)據(jù)的數(shù)據(jù)量較大,而導致的數(shù)據(jù)恢復效率低的問題。
[0121]實施例二:
[0122]圖2為本申請實施例二提供的一種數(shù)據(jù)備份裝置的結構示意圖。
[0123]如圖2所示,該裝置包括:依次相連的分割單元11、第一生成單元12、計算單元13、獲取單元14、第二生成單元15及備份數(shù)據(jù)確定單元16。
[0124]分割單元11,用于對待備份數(shù)據(jù)進行序列分割,利用分割得到的各個子序列生成與待備份數(shù)據(jù)對應的子序列集。
[0125]第一生成單元12,用于對子序列集中的各個元素進行聚類,利用每個元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與子序列集對應的符號化序列。
[0126]計算單元13,用于計算分別與每個子序列類別對應的代表子序列。
[0127]獲取單元14,用于獲取符號化序列中的各個最大頻繁連續(xù)子序列。
[0128]第二生成單元15,用于利用分別與每個最大頻繁連續(xù)子序列對應的唯一的序列符號對符號化序列進行編碼,生成與符號化序列對應的編碼序列。
[0129]備份數(shù)據(jù)確定單元16,用于利用分別與每個最大頻繁連續(xù)子序列對應的唯一的序列符號,生成與符號化序列對應的編碼序列。
[0130]本申請?zhí)峁┮环N數(shù)據(jù)備份裝置,該裝置首先對待備份數(shù)據(jù)進行序列分割生成子序列集,并將子序列集中的各個元素被其所屬子序列類別對應的類別符號替換生成符號化序列,實現(xiàn)對待備份數(shù)據(jù)的一次壓縮,然后通過分別與各個每個最大頻率連續(xù)子序列對應的序列符號對所述符號化序列進行編碼,生成與符號化序列對應的編碼序列,實現(xiàn)對待備份數(shù)據(jù)的二次壓縮,進而通過將子序列類別與代表子序列之間的對應關系、最大頻繁連續(xù)子序列與序列符號之間的對應關系及經(jīng)過壓縮后的編碼序列作為備份數(shù)據(jù),可有效避免現(xiàn)有技術因備份數(shù)據(jù)的數(shù)據(jù)量較大,而導致的數(shù)據(jù)恢復效率低的問題。
[0131]實施例三:
[0132]圖3為本申請實施例三提供的一種數(shù)據(jù)恢復方法流程圖。
[0133]如圖3所示,該方法包括:
[0134]S201、利用預先設置的最大頻繁連續(xù)子序列與序列符號之間的對應關系對預先設置的編碼序列進行譯碼,生成與所述編碼序列對應的符號化序列。
[0135]S202、利用預先設置的子序列類別與代表子序列之間的對應關系,通過代表子序列替換所述符號化序列中與該代表子序列對應的子序列類別對應的類別符號,生成與所述符號化序列對應的待備份數(shù)據(jù)。
[0136]本申請實施例提供一種數(shù)據(jù)恢復方法,該方法利用預先設置的最大頻繁連續(xù)子序列與序列符號之間的對應關系對預先設置的編碼序列進行譯碼,生成與編碼序列對應的符號化序列,并利用預先設置的子序列類別與代表子序列之間的對應關系,通過代表子序列替換符號化序列中與該代表子序列對應的子序列類別對應的類別符號,生成與符號化序列對應的待備份數(shù)據(jù),實現(xiàn)對數(shù)據(jù)的恢復。進而使得本領域技術人員通過本申請?zhí)峁┑臄?shù)據(jù)恢復方法可明確了解通過本申請?zhí)峁┑臄?shù)據(jù)備份方法對待備份數(shù)據(jù)進行數(shù)據(jù)備份得到備份數(shù)據(jù)后,如果利用該備份數(shù)據(jù)得到待備份數(shù)據(jù)以實現(xiàn)數(shù)據(jù)恢復過程。且本申請實施例提供的數(shù)據(jù)恢復方法在利用經(jīng)過聚類以及二次壓縮后生成的備份數(shù)據(jù)進行數(shù)據(jù)恢復時,不僅可以通過壓縮后的較小數(shù)據(jù)量的備份數(shù)據(jù)提高數(shù)據(jù)恢復效率,而且通過聚類后的待備份數(shù)據(jù)中的屬于同一類別的子序列可用同一代表子序列表示,同一類別中的子序列對應的代表子序列無需查通過二次查詢得到,進而可進一步提高數(shù)據(jù)恢復效率。
[0137]實施例四:
[0138]圖4為本申請實施例四提供的一種數(shù)據(jù)恢復裝置的結構示意圖。
[0139]如圖4所示,該裝置包括:第一恢復單元21,及與該第一恢復單元21相連的第二恢復單元22,其中:
[0140]第一恢復單元21,用于利用預先設置的最大頻繁連續(xù)子序列與序列符號之間的對應關系對預先設置的編碼序列進行譯碼,生成與所述編碼序列對應的符號化序列。
[0141]第二恢復單元22,用于利用預先設置的子序列類別與代表子序列之間的對應關系,通過代表子序列替換所述符號化序列中與該代表子序列對應的子序列類別對應的類別符號,生成與所述符號化序列對應的待備份數(shù)據(jù)。
[0142]本申請實施例提供一種數(shù)據(jù)恢復裝置,該裝置利用預先設置的最大頻繁連續(xù)子序列與序列符號之間的對應關系對預先設置的編碼序列進行譯碼,生成與編碼序列對應的符號化序列,并利用預先設置的子序列類別與代表子序列之間的對應關系,通過代表子序列替換符號化序列中與該代表子序列對應的子序列類別對應的類別符號,生成與符號化序列對應的待備份數(shù)據(jù),實現(xiàn)對數(shù)據(jù)的恢復。進而使得本領域技術人員通過本申請?zhí)峁┑臄?shù)據(jù)恢復方法可明確了解通過本申請?zhí)峁┑臄?shù)據(jù)備份方法對待備份數(shù)據(jù)進行數(shù)據(jù)備份得到備份數(shù)據(jù)后,如果利用該備份數(shù)據(jù)得到待備份數(shù)據(jù)以實現(xiàn)數(shù)據(jù)恢復過程。且本申請實施例提供的數(shù)據(jù)恢復裝置在利用經(jīng)過聚類以及二次壓縮后生成的備份數(shù)據(jù)進行數(shù)據(jù)恢復時,不僅可以通過壓縮后的較小數(shù)據(jù)量的備份數(shù)據(jù)提高數(shù)據(jù)恢復效率,而且通過聚類后的待備份數(shù)據(jù)中的屬于同一類別的子序列可用同一代表子序列表示,同一類別中的子序列對應的代表子序列無需查通過二次查詢得到,進而可進一步提高數(shù)據(jù)恢復效率。
[0143]本說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應,所以描述的比較簡單,相關之處參見方法部分說明即可。
[0144]以上僅是本申請的優(yōu)選實施方式,使本領域技術人員能夠理解或實現(xiàn)本申請。對這些實施例的多種修改對本領域的技術人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本申請的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本申請將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。
【權利要求】
1.一種數(shù)據(jù)備份方法,其特征在于,包括: 對待備份數(shù)據(jù)進行序列分割,利用分割得到的各個子序列生成與所述待備份數(shù)據(jù)對應的子序列集; 對所述子序列集中的各個元素進行聚類,利用每個所述元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與所述子序列集對應的符號化序列; 計算分別與每個所述子序列類別對應的代表子序列; 獲取所述符號化序列中的各個最大頻繁連續(xù)子序列; 利用分別與每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號對所述符號化序列進行編碼,生成與所述符號化序列對應的編碼序列; 將子序列類別與代表子序列之間的對應關系、最大頻繁連續(xù)子序列與序列符號之間的對應關系及編碼序列作為備份數(shù)據(jù)。
2.根據(jù)權利要求1所述的方法,其特征在于,所述對所述子序列集中的各個元素進行聚類,利用每個所述元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與所述子序列集對應的符號化序列,包括: 通過預先設置的動態(tài)時間彎曲算法計算所述子序列集中各個元素之間的距離矩陣; 利用所述距離矩陣及預先設置的層次聚類算法,對所述子序列集中的各個元素進行聚類; 利用每個所述元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與所述子序列集對應的符號化序列。
3.根據(jù)權利要求2所述的方法,其特征在于,所述計算分別與每個所述子序列類別對應的代表子序列,包括針對每個所述子序列類別執(zhí)行以下過程: 獲取所述子序列類別中的各個子序列; 分別計算所述子序列類別中的每個子序列到該子序列類別中的各個其他子序列之間的距離和; 將到所述子序列類別中的各個其他子序列之間的距離和的值最小的子序列,確定為與所述子序列類別對應的代表子序列。
4.根據(jù)權利要求3所述的方法,其特征在于,所述獲取所述符號化序列中的各個最大頻繁連續(xù)子序列,包括: 利用預先設置的基于投影數(shù)據(jù)庫的頻繁子序列挖掘算法計算所述符號化序列中的各個頻繁連續(xù)子序列; 根據(jù)預先設置的最大頻繁連續(xù)子序列獲取規(guī)則,從各個所述頻繁連續(xù)子序列中獲取各個最大頻繁連續(xù)子序列。
5.根據(jù)權利要求4所述的方法,其特征在于,所述根據(jù)預先設置的最大頻繁連續(xù)子序列獲取規(guī)則,從各個所述頻繁連續(xù)子序列中獲取各個最大頻繁連續(xù)子序列,包括: Al、從各個所述頻繁連續(xù)子序列中獲取長度為i的各個頻繁連續(xù)子序列; B1、判斷參考序列是否為某個長度為i的頻繁連續(xù)子序列中的部分字符串; Cl、當否時,將該參考序列確定為目標值; D1、判斷各個所述頻繁連續(xù)子序列中是否存在長度為i+Ι的頻繁連續(xù)子序列; E1、當存在時,將長度為i的各個所述頻繁連續(xù)子序列更新為所述參考序列,且令i'= i+Ufi'確定為新的i,返回執(zhí)行Al ; Fl、當不存在時,將每個所述目標值作為一個最大頻繁連續(xù)子序列。
6.根據(jù)權利要求5所述的方法,其特征在于,利用所述符號化序列中每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號替換該最大頻繁連續(xù)子序列,生成與所述符號化序列對應的編碼序列。
7.根據(jù)權利要求5所述的方法,其特征在于,利用所述符號化序列中每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號,及某些最大頻繁連續(xù)子序列中的部分字符串對應的唯一的序列符號,生成與所述符號化序列對應的編碼序列。
8.根據(jù)權利要求7所述的方法,其特征在于,所述利用所述符號化序列中每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號,及某些最大頻繁連續(xù)子序列中的部分字符串對應的唯一的序列符號,生成與所述符號化序列對應的編碼序列,包括: A2、依據(jù)所述符號化序列中元素的順序從所述符號化序列中讀取一個類別符號放入緩沖器buffer中; B2、判斷所述buffer中的類別符號串是否為某個最大頻繁連續(xù)子序列中的部分字符串;當是時,執(zhí)行步驟C2 ;當否時,執(zhí)行步驟D2 ; C2、判斷buffer的中類別符號串的長度是否等于某個最大頻繁連續(xù)子序列中的字符串的長度,當是時,執(zhí)行F2 ;當否時,執(zhí)行A2 ; D2、獲取與所述buffer中除最后一個類別符號的類別符號串對應的唯一的序列符號; E2、清空buffer,返回執(zhí)行步驟A2 ; F2、獲取與所述buffer中的類別符號串對應的序列符號; G2、利用上述步驟A2?F2在執(zhí)行過程中獲取的序列符號,生成編碼序列。
9.一種數(shù)據(jù)備份裝置,其特征在于,包括: 分割單元,用于對待備份數(shù)據(jù)進行序列分割,利用分割得到的各個子序列生成與所述待備份數(shù)據(jù)對應的子序列集; 第一生成單元,用于對所述子序列集中的各個元素進行聚類,利用每個所述元素所屬子序列類別對應的唯一的類別符號替換該元素,生成與所述子序列集對應的符號化序列;計算單元,用于計算分別與每個所述子序列類別對應的代表子序列; 獲取單元,用于獲取所述符號化序列中的各個最大頻繁連續(xù)子序列; 第二生成單元,用于利用分別與每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號對所述符號化序列進行編碼,生成與所述符號化序列對應的編碼序列; 備份數(shù)據(jù)確定單元,用于利用分別與每個所述最大頻繁連續(xù)子序列對應的唯一的序列符號,生成與所述符號化序列對應的編碼序列。
10.一種數(shù)據(jù)恢復方法,其特征在于,包括: 利用預先設置的最大頻繁連續(xù)子序列與序列符號之間的對應關系對預先設置的編碼序列進行譯碼,生成與所述編碼序列對應的符號化序列; 利用預先設置的子序列類別與代表子序列之間的對應關系,通過代表子序列替換所述符號化序列中與該代表子序列對應的子序列類別對應的類別符號,生成與所述符號化序列對應的待備份數(shù)據(jù)。
11.一種數(shù)據(jù)恢復裝置,其特征在于,包括: 第一恢復單元,用于利用預先設置的最大頻繁連續(xù)子序列與序列符號之間的對應關系對預先設置的編碼序列進行譯碼,生成與所述編碼序列對應的符號化序列; 第二恢復單元,用于利用預先設置的子序列類別與代表子序列之間的對應關系,通過代表子序列替換所述符號化序列中與該代表子序列對應的子序列類別對應的類別符號,生成與所述符號化序列對應的待備份數(shù)據(jù)。
【文檔編號】G06F11/14GK104268034SQ201410527483
【公開日】2015年1月7日 申請日期:2014年10月9日 優(yōu)先權日:2014年10月9日
【發(fā)明者】楊樹強, 宋錫寧, 金松昌, 尹洪, 陳志坤, 束陽雪, 蔣千月, 薛竹君, 黃鴻杰, 周斌, 韓偉紅, 賈焰, 李愛平 申請人:中國人民解放軍國防科學技術大學