和存在已久的第三方產品一樣,Windows Server8的重複數據刪除功能旨在讓更多的數據保存在更少的空間中。注意,我不是說這個重複數據刪除功能能讓更多的數據存儲在更少的空間中。盡管Windows Server8將支持存儲級的重複數據刪除,它還支持傳輸中數據的重複數據刪除。
存儲重複數據刪除
盡管重複數據刪除是Windows操作係統中的新功能,微軟產品已經用多種方法增加存儲容量很長時間了。例如,Windows操作係統長久以來都支持文件係統(NTFS)級別的壓縮。同樣地,Exchange Server的一些之前版本通過單一實例存儲(SIS)的使用尋求方法來最大化可用的存儲空間。盡管這樣的技術的確幫助降低了存儲成本,但是NTFS壓縮和單一實例存儲都沒有Windows Server8的重複數據刪除那麼高效。
根據微軟的估計,Windows Server8的重複數據刪除功能在年末市的時候能為一般的數據存儲交付2:1的優化比率。這個比率在虛擬服務器環境中可以增加到20:1。
存儲重複數據刪除工作的方式
Windows Server8的重複數據刪除功能比單一實例存儲更高效的原因是因為SIS是在文件級別工作。換句話說,如果一個文件的兩份相同拷貝需要放在一台服務器上,那麼單一實例存儲隻存儲這個文件的一個拷貝,但是使用指示器來造成存在多個文件拷貝的假象。盡管這種技術對於包括多個同一文件的服務器來說的確很好,但是對於類似但不相同的文件來說就沒有任何作用了。
這個操作係統會為每一塊計算哈希。然後這些哈希值進行比較來確定哪一塊是相同的。發現相同的塊時,除了一個塊之外的所有拷貝都會刪除。這個文件係統使用指示器來介紹哪個塊附屬於哪個文件。考慮這種程序的一個方法是遺留文件係統一般把文件當作數據流。但是Windows Server8的文件係統(啟用了重複數據刪除功能)更多的情況下會把文件當作一個塊集。
順便提一下,Windows Server8的提前測試版使用文件係統壓縮。任何可能的時候,數據的獨立塊都會壓縮來節省空間。
數據完整性
關於數據重複刪除的一大擔憂就是文件完整性。盡管機率不大,但是數據的兩個不相似的塊擁有相同的哈希值理論上也是可能的。有些第三方產品通過在刪除重複塊前使用不同且更複雜公式來驗證這些塊確實是相同的。
盡管微軟沒有給出用來保護數據完整性的具體確切的方法,但是Windows Server8開發者預覽版的指南中提到,該操作係統“利用校檢和、一致性和標識確認來確保數據的完整性”。此外,這個操作係統還使用冗餘來防止某些類型數據塊的數據流失。
帶寬優化
正如之前提到的,Windows Server8將實現已存儲數據和傳輸中數據的重複數據刪除。重複數據刪除技術和之前描述的要整合到分支緩存中的那些技術一樣,這些技術最小化通過WAN連接傳輸的數據量。自帶的重複數據刪除功能將保留大量的存儲空間,同時它不會對文件係統的性能造成不良影響。