“去重+壓縮”完美詮釋“1+1=0”
“1+1”在什么情況下等于0? 在算錯的情況下等于0! Excuse me? 小編從不打誑語, 一臉認真地告訴說, “數據壓縮+重復數據刪除”等于0 想知道為什么? 欲知詳情,且看下文分解… ”
一談到重復數據刪除,很多人想到的就是虛擬帶庫;而一提到壓縮,想到的就是文件和視頻。在討論重復數據刪除和壓縮怎么用之前,我們先來看一下什么是重復數據刪除,什么是壓縮。 存儲空間、預算 雙雙告急! 你考慮過這個辦法嗎? 重復數據刪除,簡單來說就是遇到重復數據時,不是保存重復數據的副本,取而代之的是增加一個指向***份(并且是唯一一份)數據的索引。從根本上講,它能減少存儲數據所占用的空間。這樣做會帶來諸多好處,如節約IT經費、無須為額外空間增加投資入;減少備份數據、數據快照等的大??;較少電源壓力;節約網絡帶寬;節約時間。 數據壓縮有各種各樣的算法,但是究其本質,還是一種編碼技術。假如,我們將這篇文章常用的字符串“重復數據壓縮”六個字編碼為“去重”,那么本文中的字數就會相應地減少,即便這樣也還是有多份“去重”存在。 重復數據刪除與數據壓縮的主要區別在于:假如你有兩份完全相同的數據(File or Block Level),數據壓縮會對每份數據進行編碼,進而用簡單編碼代替復雜編碼。而重復數據刪除則能辨別出這是兩份相同的數據,從而只保存***個數據,并通過指針將第二份數據指向***份源數據。 所以我們看到,重復數據刪除和壓縮在本質上是不矛盾的,如果能在數據存儲中既使用重復數據刪除技術,又使用數據壓縮技術,那一定是事半功倍的。 既然重復數據刪除和壓縮技術這么好,那么你有想過在生產存儲上用去重和壓縮嗎? 其實很多IT經理都想在生產存儲上用去重和壓縮,但是卻有很多的擔心,可以說是一言難盡。讓我們先來看一份調研數據: 如上圖所示,2016年,ESG針對373位IT人員就“數據存儲環境業務挑戰”的調研顯示,排名第二位的就是數據的快速增長。小編私下里也和多位資深的IT運維人員交流過他們的數據增長情況。 A君:“當初規劃的時候,明明是考慮到了未來三年內的數據增長,結果剛用了一年空間就不夠了。” B君:“每年的IT預算都在降低,存儲空間越來越緊張。” 小編:“你有考慮過用去重和壓縮嗎?” “考慮過,一是不知道具體能省多少空間,但最主要還是擔心對現有應用系統造成影響,比如對性能的影響、對可靠性的影響、對運維的影響等等。如果導致數據丟失,那就得不償失了。” 那么今天,小編就帶著大家來看看這個問題,戴爾的存儲是如何解決這些問題的。 數據去重與數據壓縮聯動出擊 數據去重比竟達50:1 我們還是先用數據說話,來看一份調研數據,同樣是來自ESG的測試數據。 據圖表數據顯示,在不同應用環境下,經過數據壓縮和重復數據刪除之后,數據量都有大幅的縮減。而如果單使用壓縮技術,數據的縮減量卻并不是十分明顯。這些主要是和應用的數據類型以及壓縮算法有關,而大多數應用環境,在應用壓縮和重復數據刪除以后,數據的縮減量都非常的可觀。從ESG基于實際應用環境的測試結果來看,實現了非常好的數據縮減。 “由于應用環境的不同以及特定數據的復雜類型,很難有一個特定的標準值來描述壓縮和去重的效率。戴爾SC存儲的目的是通過一個全面的方法提供***的用戶價值(見上圖)。戴爾SC系列存儲通過分層架構(SSD以及HDD),精簡克隆等技術實現了上述目標。同時,數據效率被大幅改善,經過ESG實驗室基于實際應用數據的測試達到了66.75%。整個12TB的數據,實現了3:1的數據去除。相比之前ESG實驗室的測試結果,包括在線壓縮去重,戴爾SC系列存儲都表現出了非常好的性能。”(編者譯,源自ESG測試報告)。 具體壓縮率數據請參照下表: 從這個數據表中,我們能更清楚的看到壓縮和重復數據刪除的效果。其中很多IT經理比較關注VMware環境,我們看到,在使用數據壓縮后,能夠實現2:1的壓縮率,而將重復數據刪除和數據壓縮結合在一起來使用,數據變為了不到原來的30%??梢哉f這對使用VMware虛擬化環境的客戶是一個非常好的消息。即便是在VDI環境,經過壓縮和去重之后,也能實現2:1的去除率。在Hyper-V環境,更是達到了驚人的50:1的去除率。由此可見,在戴爾SC存儲上使用重復數據刪除和數據壓縮,確實能有效的提高整個存儲的利用率。 擔心性能被拖垮? SC系列告訴你,不存在! 那么,打開壓縮和重復數據刪除功能以后,對存儲性能會有什么影響呢?最主要的得益于SC系列存儲獨特的體系結構設計,整個壓縮和去重過程幾乎對性能沒有影響。下面,我們就來分析一下這個問題。 首先我們先來看一下SC系列存儲的體系結構設計。我們說SC存儲設計的核心是閃存,是新一代的體系結構,原因正是基于此。如下圖所示,在SC存儲內部,最多可將存儲分為三個層次,分別是T1、T2、T3。這個分層過程是系統自動的,比如,如果添加7.2K的NL SAS,那么系統會默認的把它分到T3,如果添加WI SSD,那么系統就會把它默認分到T1。由于RAID10和RAID5在讀寫性能上的差異,我們知道同種類型的磁盤組RAID10寫性能要優于RAID5而讀性能基本相當,所以SC存儲在每一層里面又會分為RAID10和RAID5兩種條帶類型。 其次最關鍵的一點,所有系統新寫入的數據都放在T1的RAID10里面,而每過一段時間,系統就會做一個Data Progression,保存數據bitmap之后將數據塊屬性變為只讀。之后,將不活躍的數據逐漸遷移到下一層,比如T1 RAID10到T1 RAID 5或者T1 RAID5到T2 RAID10。通過這種方式,整個存儲的性能永遠是T1的性能,而無需進行調優。如果使用中,覺得性能不夠,就需要相應的添加T1的磁盤,如果覺得容量不夠,就可以添加性價比***的T3磁盤。SC存儲正是通過這種方式,實現了***的性價比! 而重復數據刪除和數據壓縮的過程就發生在Data Progression的過程中。在去重過程中,Page被移動到專用的存儲空間。重復數據刪除的頁面為4 KB大小的切片,并基于切片制作Hash指紋。用Hash指紋對比重復數據刪除的字典進行查詢,以查看切片是否已被保存在字典中。如果已經保存,則讀取兩者的源數據進行比較,以確保數據一致,如果一致之后會將切片刪除。如果不一致,則分別保存切片數據以及Hash指紋,并做相應的更新。壓縮過程與去重過程近似。 由以上SC存儲的架構和去重壓縮過程可見,SC的去重壓縮過程其實是后去重壓縮過程,得益于SC的分層流動存儲架構,整個去重過程不會影響生產數據的性能。因為生產數據的“寫”性能全部發生在T1的RAID10組里面, “讀”也絕大部分發生在T1的SSD里面,故可以達到理想的數據去重效率,即平均數據去除率66%。所以,即便是在生產存儲中使用也無需擔憂。需要說明的是,客戶也無需為去重和壓縮花費額外的費用,只要客戶的存儲環境中有一定數量的SSD磁盤,就可以使用戴爾SC存儲的去重和壓縮功能啦! 說到這里,其實戴爾SC存儲還有兩個包含在基礎軟件包里的功能,可以讓客戶在VMware虛擬機環境使用壓縮和重復數據刪除的時候如虎添翼。一個是VVols,另一個是QoS。 VVols,可以讓存儲直接映射虛擬卷給VM虛擬機,而無需將整個卷硬設備host主機。有了VVols,虛擬機管理員使用熟悉的VSphere工具為每臺虛擬機選擇SC系列策略,存儲管理員只需定義可供虛擬機管理員使用的策略的菜單。另一項功能就是QoS,說起來更厲害了,有了QoS,存儲管理員可以給每個卷設置屬性文件profile,可以限制這個卷的IOPS以及MB/s。同時也可以給一組卷設置整個Group的IOPS以及MB/s。 看到這兒,相信你已經揭開1+1等于0的謎底了。簡單來說,戴爾SC存儲利用先進的分層流動存儲架構在進行數據壓縮和重復數據刪除的同時,對生產數據的性能影響為“零”。另外,借助VVols、QoS以及壓縮和重復數據刪除功能一起在生產環境中使用,真的可以靈活、高效的進行管理,實現事半功倍,按需分配。