加入RUN!PC粉絲團
最近新增的精選文章
 
最多人點閱的精選文章
 
 
精選文章 - 網管資安
分享到Plurk
分享到FaceBook
 
儲存系統內建的資料壓縮技術
文/Sandra Moulton 2011/1/5 下午 03:56:45

效率是讓IT具備彈性的關鍵。NetApp一直以來皆致力於帶來最新的效率創新技術,像是Snapshot、this provisioning(資源隨需配置)、FlexClone、適用於一線儲存設備的deduplication(重複資料刪除技術),以及許多相關暨其他技術。

資料壓縮技術顯然已存在一段很長的時間,但卻為大型儲存系統帶來重大挑戰,特別是在效能影響方面最為明顯。直到最近,適合用於磁帶和VTL之類裝置的壓縮功能,幾乎一律來自於專用硬體,但此類硬體勢必會增加成本花費與管理複雜度。

對此,NetApp開發了一種方法,可在軟體上提供通透性內嵌資料壓縮功能,同時減輕資料壓縮對於運算資源的影響。這讓企業能夠在不需額外費用的情況下,使用已升級成Data ONTAP 8.0.1,或更新版本就可享有這項壓縮功能。

在本文中,我們將討論該資料壓縮的內涵及其運作方式,並檢閱一些常見使用案例,這些案例將顯示我們測得的空間節約效益。

Data Compression(資料壓縮)

資料壓縮技術是NetApp在Data ONTAP 8.0.1中引進,已整合至該產品的一個免費選項,可做為軟體型解決方案,用來進行透明化內嵌資料壓縮,不需要任何應用程式變更,即可使用。

而此資料壓縮藉由壓縮一線、二線及歸檔儲存設備上的磁碟(FlexVol)內資料,來減少在儲存系統上儲存資料所需的實際容量。它會壓縮正常的檔案、虛擬本機磁碟以及LUN,而不會將整個檔案壓縮成單一個連續串流位元組。

單一串流在處理資料量少的讀取作業時非常昂貴,因為它需要從磁碟中讀取整個檔案,並進行解壓縮,之後才能為讀取要求提供服務,而且這種做法對於大型檔案而言特別困難。為了避免發生此情況,NetApp資料壓縮的運作方式是一次壓縮一小群連續區塊,這也是讓壓縮更有效率的關鍵。因為每當有讀取要求時,只需讀取並解壓縮一小群區塊,而非整個檔案。如此可獲得最佳的讀取效率,並讓所壓縮的檔案大小具備更大的擴充性。

此壓縮運算法,實作上是將檔案以32KB為單位的資料區塊(稱為「壓縮群組」)做分割,每個壓縮群組只會包含來自單一檔案的資料。

寫入資料
寫入要求是在壓縮群組層級處理。一旦形成群組之後,即會在此資料仍停留於記憶體中時執行測試,以判斷資料是否可以壓縮。如果無法壓縮,便只會將其傳送到磁碟。唯有測試顯示資料可以壓縮時,才會對整個群組進行壓縮。如此便可獲得最大節約效益,同時將資源成本降至最低。由於壓縮後的資料可以擁有較少區塊的實體寫入,不僅降低寫入I/O次數、減少佔用的儲存空間,執行備份所需的時間也同樣可減少。(圖1)


▲圖1:系統會在執行任何壓縮之前,對壓縮群組測試其可壓縮性。然後視測試結果而定,可能以壓縮或非壓縮形式,將這些資料排清到磁碟中。


讀取資料
讀取壓縮的資料時,Data ONTAP只會讀取包含所要求資料的壓縮群組,而非整個檔案。如此可將處理要求所需的I/O量降至最低,而且所產生的負荷非常少。

壓縮執行方式
NetApp資料壓縮設計為可以獨立運作,或是與重複資料刪除技術一同運作,以期達到最佳節約效益。你可將重複資料刪除技術排程在最方便的時間執行,並將資料壓縮當做內嵌程序,在資料寫入磁碟時執行。若在相同磁碟區上同時啟用這兩者,則會先壓縮資料,再刪除重複資料。重複資料刪除技術在操作時並不需要解壓縮檔案;只要從資料磁碟區中移除重複的壓縮或未壓縮區塊即可。

需注意的是,雖然NetApp資料壓縮可將效能影響降至最低,卻無法將影響完全消除。你應針對執行資料壓縮時所需的資源,評估其容錯能力。實際影響可能取決於數種因素:

●應用程式的類型。
●資料集的可壓縮性。
●資料存取模式(例如,循序與隨機存取、I/O 大小與模式)。
●平均檔案大小。
●變動率。
●能夠在系統上壓縮的磁碟區數量。
●硬體平台—系統中的CPU/記憶體數量。
●系統上的負載。
●磁碟類型與速度。
●集合體中的磁碟數量。

目前已發展的最佳實務法則中,可透過調整大小和活動,將實作效益最佳化。因為影響因素很多,所以在環境中進行測試,需先判斷想要使用的資料壓縮適用性。接下來將討論應用程式資料集所測得的節約效益。

利用資料壓縮和重複資料刪除技術來節省空間

前面提到,資料壓縮可透過內嵌壓縮技術來立即提供空間節約效益。重複資料刪除技術則會定期執行(後處理),以提供空間節約加乘效益。當壓縮與重複資料刪除技術一同運作時,需注意節約效益,未必是在資料集上個別執行每項技術時所看見的節約效益總和。

對某些類型的資料而言,壓縮並不會比單獨使用重複資料刪除技術節省更多空間,但在其他案例中,則可能節省更多空間。此外在另一些案例中,最大的儲存節約效益來自於一起執行壓縮與重複資料刪除技術。表1所含的範例將舉例說明這幾點現象。


▲表1:各種資料類型的最佳空間節約效益組合


雖然這些是典型的節約範例,但並非所有的資料集都相等。你應該利用自己的資料進行測試,才能準確評估即將體驗的節約效益。

典型使用案例

如先前所述,壓縮可以在某些執行案例上發揮驚人的儲存成本節約效益。請務必衡量上述兩項技術的相乘效益,以判斷在儲存環境中的何處進行壓縮才能獲得最佳效果。

資料庫備份(和一般備份)可能是適合使用資料壓縮的絕佳案例。資料庫通常都很龐大,雖然會有許多使用者在備份儲存裝置期間受到輕微的效能影響,但之後可享有65%以上的容量節約效益。

另一個可能的使用案例是檔案服務。在系統上利用壓縮率為50%,會使檔案服務工作負載的忙碌狀態達到將近50%的資料集進行測試時,我們測量到資料處理量只降低10%。在檔案回應時間為2毫秒的檔案服務環境中,轉換增加0.2毫秒,也就是回應時間提高至2.2毫秒。

由於壓縮使空間節約效益達到65%,因此小幅度的效能降低對此而言還可接受。並且此類節約效益甚至可藉由使用SnapMirror技術複製資料而擴大範圍,進一步節省網路頻寬與二線儲存設備上的空間。(此時,二線儲存設備會先從一線儲存設備繼承其壓縮內容,因此不必再進行額外處理。)如此一來,將可能得到:

●一線儲存設備節省65%的容量。
●透過網路傳送以進行複製的資料可減少65%。
●複製速度加快65% 。
●二線儲存設備上節省65%的容量。

搭配其他儲存技術一併使用資料壓縮

資料壓縮如何與其他技術搭配?首先看到SnapMirror,主要運作於實體區塊層級。若已在來源端啟用重複資料刪除與壓縮,則無論是透過線路傳輸還是直接在目的地上進行,均能維持相同的空間節約效益。如此可降低複製期間所需的網路頻寬量以及傳輸時間。對此的通用方針包括:

●來源與目的地系統都必須使用相同版本的Data ONTAP。
●只能在來源系統上管理壓縮與重複資料刪除技術,因為目的地系統上的彈性磁碟區會完全繼承其效率屬性與儲存節約效益。
●共享區塊只需傳輸一次,因此重複資料刪除技術也會降低網路頻寬。
●在整個傳輸過程中都會維持壓縮狀態,如此一來,傳輸的資料量便會減少,因而可降低網路頻寬用量。
●不需進行SnapMirror連結壓縮,因為資料已經利用 NetApp 資料壓縮功能完成壓縮了。

網路頻寬和SnapMirror傳輸時間的減少量會直接與空間節省量成正比。例如,如果你能夠節省50%的磁碟容量,則SnapMirror傳輸時間將降低50%,而必須透過線路傳送的資料量也應減少50%。

接下來看的是Qtree(配額樹狀結構)SnapMirror與SnapVault,都是運作在邏輯區塊層級上;來源和目的地儲存系統會個別執行重複資料刪除技術和資料壓縮,因此即使來源資料未壓縮或未刪除重複資料,還是能壓縮Qtree SnapMirror與SnapVault。

最後是複製,FlexClone技術可即時建立檔案或磁區的虛擬複本,在對複製內容進行變更之前,複本不會耗用其他儲存空間,又可同時支援重複資料刪除技術與壓縮。

總結

NetApp資料壓縮將承續傳統,為Data ONTAP產品帶來提升儲存效率的價值,而且不需額外付費就可引進使用,讓儲存量得以藉此降低,並且搭配其他相關技術,以彈性運用並有效率進行管理。

作者簡介
Sandra Moulton,現任NetApp技術行銷工程師。自從一年前加入NetApp開始,Sandra幾乎將全部心力都投注在儲存效率上,特別是在重複資料刪除技術與資料壓縮領域;她負責開發這些關鍵型技術的白皮書、最佳做法指南及參考資料。Sandra擁有20年以上的業界經驗,曾在美國加州矽谷的其他業界領先公司中從事類似性質的工作。