采用動態(tài)壓縮的數(shù)據(jù)復制的制作方法
【技術(shù)領(lǐng)域】
[0001]本公開主要涉及用于在數(shù)據(jù)存儲環(huán)境中復制數(shù)據(jù)的系統(tǒng)和方法。特別地,本公開涉及通過使用動態(tài)或按需壓縮而在數(shù)據(jù)存儲子系統(tǒng)或信息處理系統(tǒng)中的兩個或更多聯(lián)網(wǎng)數(shù)據(jù)存儲站點或設(shè)備之間有效復制數(shù)據(jù)的系統(tǒng)和方法,對存在著網(wǎng)絡鏈路或連接相對較慢的時段的系統(tǒng)來說,此類系統(tǒng)和方法是非常有益的。
【背景技術(shù)】
[0002]隨著信息價值和用途的持續(xù)提升,個人和公司試圖尋找附加方式來處理和存儲信息。其中一個可供用戶使用的選項是信息處理系統(tǒng)。信息處理系統(tǒng)通常會處理、編譯、存儲和/或傳遞用于企業(yè)、個人或其他用途的信息或數(shù)據(jù),由此允許用戶利用該信息的價值。由于技術(shù)和信息處理需要及需求因應不同用戶或應用而變化,因此,信息處理系統(tǒng)在處理何種信息,如何處理信息,處理、存儲或傳遞多少信息以及如何有效快速地處理、存儲或傳遞信息方面也存在差異。信息處理系統(tǒng)的變體容許該信息處理系統(tǒng)是通用系統(tǒng)還是為特定用戶或特定用途配置的系統(tǒng),例如用于金融交易處理、機票預訂、企業(yè)數(shù)據(jù)存儲或全球通信。此外,信息處理系統(tǒng)可以包括多種硬件或軟件組件,這些硬件或軟件組件可被配置成處理、存儲和傳遞信息,并且可以包括一個或多個計算機系統(tǒng)、數(shù)據(jù)存儲系統(tǒng)以及聯(lián)網(wǎng)系統(tǒng)。
[0003]同樣,個人和企業(yè)試圖尋找附加方式來保護信息或是確保信息的安全,由此提高諸如可靠性、容錯性或信息可存取性。在信息處理系統(tǒng)中,一種這樣的信息保護方法包括通過復制或共享信息來確保諸如數(shù)據(jù)存儲設(shè)備之類的冗余資源之間的一致性,作為示例,該數(shù)據(jù)存儲設(shè)備可以包括但不局限于磁盤驅(qū)動器、固態(tài)驅(qū)動器、磁帶驅(qū)動器等等。信息或數(shù)據(jù)的復制處理可以在通過LAN、WAN、因特網(wǎng)等等的計算機網(wǎng)絡可通信地耦合的各種組件上進行,由此,數(shù)據(jù)存儲設(shè)備可以并且往往有利地位于物理距離很遠的位置。對于數(shù)據(jù)復制、尤其是遠程數(shù)據(jù)復制來說,其目的是防止可能會在一個位置出現(xiàn)的故障或災難所造成的損害,和/或在發(fā)生此類事件的情況下提升數(shù)據(jù)恢復能力。
[0004]通常,災難恢復策略要求站點在發(fā)生緊急狀況時將數(shù)據(jù)復制到現(xiàn)場以外。然而,很多遠端站點(或遠端辦公室)都存在著帶寬很小的問題,由此妨礙其完成其業(yè)務關(guān)鍵復制操作的能力。作為示例而不是限制,低帶寬可以歸因于低速WAN、日間的高流量或帶寬使用時段,出于任何原因而對帶寬進行限制的站點策略,其中限制帶寬的原因可以是使用情況統(tǒng)計或其他多種原因,但是并不局限于此。
[0005]—種用于降低復制處理所造成的帶寬壓力的傳統(tǒng)方法包括:采用一種在通過網(wǎng)絡傳送數(shù)據(jù)之前始終對數(shù)據(jù)進行壓縮的策略,以便嘗試從總體上減少所傳送的數(shù)據(jù)量。然而,此類恒定壓縮策略存在缺陷。特別地,壓縮數(shù)據(jù)(以及在接收端解壓縮)將會耗費CPU時間,其需要一定等級的硬件成本(例如存儲器成本),并且會產(chǎn)生與被復制數(shù)據(jù)的可用性相關(guān)的延遲問題。此外,在一些情況中,壓縮數(shù)據(jù)不會占用較少空間,其在節(jié)約空間的差異極小或者是可忽略的。相應地,壓縮此類數(shù)據(jù)會對時間和資源造成極大浪費。
[0006]相應地,需要具有用于在數(shù)據(jù)存儲環(huán)境中復制數(shù)據(jù)的改進系統(tǒng)和方法,尤其是在低帶寬妨礙了有效復制能力的情況下。特別地,所需要的是通過使用動態(tài)或按需壓縮而在數(shù)據(jù)存儲子系統(tǒng)或信息處理系統(tǒng)中的兩個或更多聯(lián)網(wǎng)數(shù)據(jù)存儲站點或設(shè)備之間有效復制數(shù)據(jù)的系統(tǒng)和方法。對于網(wǎng)絡鏈路或連接較慢的系統(tǒng)來說,此類系統(tǒng)和方法是非常有用的,但其并不局限于此。
【發(fā)明內(nèi)容】
[0007]以下給出了關(guān)于本公開的一個或多個實施例的簡要概述,以便提供關(guān)于此類實施例的基礎(chǔ)理解。本
【發(fā)明內(nèi)容】
部分并不是關(guān)于所設(shè)想的所有實施例的詳盡綜述,其目的既不是標識出所有實施例的關(guān)鍵或重要元素,也不是描述任一或全部實施例的范圍。
[0008]在一個實施例中,本公開涉及一種用于在數(shù)據(jù)存儲子系統(tǒng)中的兩個或更多聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備之間復制數(shù)據(jù)的方法。該方法包括:在通過網(wǎng)絡將數(shù)據(jù)從第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備傳遞到第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備之前,至少部分基于第一與第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備之間的帶寬吞吐量來動態(tài)確定是否壓縮該數(shù)據(jù)。如果確定壓縮該數(shù)據(jù),則該方法包括:壓縮該數(shù)據(jù),以及將壓縮數(shù)據(jù)從第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備傳送到第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備。如果確定不壓縮數(shù)據(jù),則該方法包括:將未壓縮的數(shù)據(jù)從第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備傳送到第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備。該方法還可以包括:從第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備向第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備傳送數(shù)據(jù),以便獲取用于指示第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備與第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備之間的帶寬吞吐量的量度。在進一步的實施例中,通過傳送數(shù)據(jù)來獲取用于指示帶寬吞吐量的量度的處理可被周期性執(zhí)行,以便在不同時間獲取用于指示第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備與第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備之間的帶寬吞吐量的量度。在一些情況中,該量度可以在預定時間間隔中獲取。在其他情況中,作為示例,該量度可以在每次通過網(wǎng)絡傳送了預定數(shù)據(jù)量(例如每20個數(shù)據(jù)組塊)之后獲取。在一些實施例中,動態(tài)確定是否壓縮數(shù)據(jù)可以包括:將帶寬量度與一個限定了何時應該使用壓縮處理的預定策略相比較。該策略限定了當所估計的用于壓縮數(shù)據(jù)和傳送壓縮數(shù)據(jù)的時間小于所估計的用于傳送未壓縮的數(shù)據(jù)的時間的時候應該使用壓縮處理。該策略可以基于與以下各項關(guān)聯(lián)但不局限于以下各項的信息:數(shù)據(jù)量,數(shù)據(jù)類型,壓縮數(shù)據(jù)所耗費的時間,壓縮后預期的數(shù)據(jù)尺寸縮減,傳送未壓縮數(shù)據(jù)所耗費的時間,傳送經(jīng)壓縮數(shù)據(jù)所耗費的時間,可用處理能力,以及可用壓縮算法。該策略還可以限定不同壓縮侵蝕(aggressiveness)等級,以便確定所使用的壓縮侵蝕量。在某些實施例中可以使用交錯壓縮處理,其中該策略限定的是為該數(shù)據(jù)的第一部分而不是該數(shù)據(jù)的第二部分使用壓縮處理,由此交錯執(zhí)行用于壓縮針對第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備的數(shù)據(jù)傳輸?shù)奶幚?。關(guān)于交錯壓縮處理的一個示例是只對數(shù)據(jù)集合中的每隔一個的數(shù)據(jù)塊或是每隔兩個的數(shù)據(jù)塊進行壓縮。無論壓縮處理依照所測量的吞吐量是否合乎預期,如果數(shù)據(jù)壓縮實際是可忽略的,那么可以保持數(shù)據(jù)不被壓縮。
[0009]在另一個實施例中,本公開涉及一種信息處理系統(tǒng)。該系統(tǒng)包括:第一數(shù)據(jù)存儲站點,其被配置成在計算機網(wǎng)絡上向第二數(shù)據(jù)存儲站點傳送數(shù)據(jù),以便在第二數(shù)據(jù)存儲站點上復制該數(shù)據(jù),所述第一數(shù)據(jù)存儲站點還被配置成至少部分基于在第一與第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備之間測得的帶寬吞吐量來動態(tài)確定是否在通過網(wǎng)絡傳送數(shù)據(jù)之前壓縮數(shù)據(jù)。如果確定壓縮數(shù)據(jù),則第一數(shù)據(jù)存儲站點被配置成壓縮該數(shù)據(jù)以及在網(wǎng)絡上傳送壓縮數(shù)據(jù)。如果確定不壓縮數(shù)據(jù),則第一數(shù)據(jù)存儲站點被配置成在網(wǎng)絡上傳送未壓縮的數(shù)據(jù)。在一些實施例中,第一數(shù)據(jù)存儲站點和第二數(shù)據(jù)存儲站點相互遠離。第一數(shù)據(jù)存儲站點還可被配置成周期性地測量第一與第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備之間的帶寬吞吐量,以便在多個時間獲取關(guān)于第一與第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備之間的帶寬吞吐量的量度。第一數(shù)據(jù)存儲站點可以存儲用于確定是否壓縮數(shù)據(jù)的一個或多個預定策略。所述第一數(shù)據(jù)存儲站點可以將用于指示帶寬吞吐量的周期性量度與所述一個或多個預定策略相比較,以便確定何時應該使用壓縮處理。在一個實施例中,所述一個或多個策略限定了當所估計的用于壓縮數(shù)據(jù)和傳送壓縮數(shù)據(jù)的時間小于所估計的用于傳送未經(jīng)壓縮的數(shù)據(jù)的時間的時候,應該使用壓縮處理。在某些實施例中,第一數(shù)據(jù)存儲站點可以使用交錯壓縮處理,由此為該數(shù)據(jù)的第一部分而不是該數(shù)據(jù)的第二部分使用壓縮處理,從而交錯執(zhí)行用于壓縮針對第二數(shù)據(jù)存儲站點的數(shù)據(jù)傳輸?shù)奶幚怼?br>[0010]在另一個實施例中,本公開涉及一種用于在數(shù)據(jù)存儲子系統(tǒng)中的兩個或更多聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備之間復制數(shù)據(jù)的方法。該方法包括:在通過網(wǎng)絡將數(shù)據(jù)從第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備傳送到第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備之前,動態(tài)確定是否壓縮數(shù)據(jù)。動態(tài)確定是否壓縮任何特定數(shù)據(jù)可以包括:在將第一數(shù)據(jù)從第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備傳送到第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備期間,預先準備第二數(shù)據(jù),并且開始壓縮第二數(shù)據(jù),如果第二數(shù)據(jù)壓縮處理至少是在結(jié)束從第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備傳送到第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備的第一數(shù)據(jù)傳輸之前完成的,則將經(jīng)過壓縮的第二數(shù)據(jù)從第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備傳送到第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備,否則將未壓縮的第二數(shù)據(jù)從第一聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備傳送到第二聯(lián)網(wǎng)數(shù)據(jù)存儲設(shè)備。然而,如果第二數(shù)據(jù)壓縮實際是可忽略的,那么可以在未經(jīng)壓縮的情況下通過網(wǎng)絡來傳送第二數(shù)據(jù)。
[0011]雖然公開了多個實施例,但是對本領(lǐng)域技術(shù)人員來說,從顯示并描述本發(fā)明的說明性實施例的以下詳細描述中可以清楚了解本公開的其他實施例。應該認識到的是,本公開的不同實施例能在多個明顯的方面進行修改,所有這些修改均未脫離本公開的實質(zhì)和范圍。相應地,附圖和詳細描述本質(zhì)上應被視為是說明性而不是限制性的。
【附圖說明】
[0012]雖然本說明書是以具體指出且明確地要求保護被認為是構(gòu)成本公開的不同實施例的主題的權(quán)利要求書為概括的,但是相信從以下結(jié)合附圖的詳細描述中將可以更好地理解本發(fā)明,其中:
[0013]圖1是與本公開的實施例相適合的磁盤驅(qū)動器系統(tǒng)的示意圖。
[0014]圖2是根據(jù)本公開的一個實施例的通過使用動態(tài)或按需壓縮處理而在數(shù)據(jù)存儲子系統(tǒng)或信息處理系統(tǒng)中的兩個或更多聯(lián)網(wǎng)數(shù)據(jù)存儲站點或設(shè)備之間復制數(shù)據(jù)的系統(tǒng)的概念性框圖。
[0015]圖3是根據(jù)本公開的一個實施例的通過使用動態(tài)或按需壓縮處理而在數(shù)據(jù)存儲子系統(tǒng)或信息處理系統(tǒng)中的兩個或更多聯(lián)網(wǎng)數(shù)據(jù)存儲站點或設(shè)備之間復制數(shù)據(jù)的方法的流