Z 檔案系統 或 ZFS 是設計來克服許多在以往設計中發現的主要問題的一個先進的檔案系統。
最初由 Sun™ 所開發,後來的開放源始碼 ZFS 開發已移到 OpenZFS 計劃。
ZFS 的設計目標主要有三個:
資料完整性:所有資料都會有一個資料的校驗碼 (checksum),資料寫入時會計算校驗碼然後一併寫入,往後讀取資料時會再計算一次校驗碼,若校驗碼與當初寫入時不相符,便可偵測到資料錯誤,此時若有可用的資料備援 (Data redundancy),ZFS 會嘗試自動修正錯誤。
儲存池:實體的儲存裝置都會先被加入到一個儲存池 (Pool),這個共用的儲存池可用來配置儲存空間,儲存池的空間可被所有的檔案系統使用且透過加入新的儲存裝置來增加空間。
效能:提供多個快取機制來增加效能。先進、以記憶體為基礎的讀取快取可使用 ARC。第二層以磁碟為基礎的讀取快取可使用 L2ARC,以磁碟為基礎的同步寫入快取則可使用 ZIL。
完整的功能清單與術語在 節 19.8, “ZFS 特色與術語” 中有詳述。
ZFS 與以往任何的檔案系統有顯著的不同,因為它不只是一個檔案系統,ZFS 的獨特優點來自結合了以往被分開的磁碟區管理程式 (Volume Manager) 及檔案系統兩個角色,讓檔案系統也能夠察覺磁碟底層結構的變動。傳統在一個磁碟上只能建立一個檔案系統,若有兩個磁碟則會需要建立兩個分開的檔案系統,在傳統要解決這個問題要使用硬體 RAID 來製作一個空間實際上由數顆實體磁碟所組成的單一的邏輯磁碟給作業系統,作業系統便可在這個邏輯磁碟上放置檔案系統,即使是在那些使用 GEOM 提供的軟體 RAID 解決方案也是一樣,把 UFS 檔案系統放在 RAID Transform 上面當做是一個單一的裝置。ZFS 結合了磁碟區管理程式 (Volume Manager) 與檔案系統來解決這個問題並讓建立多個檔案系統可以共用一個儲存池 (Pool)。ZFS 最大的優點是可以察覺實體磁碟配置的變動,當有額外的磁碟加入到儲存池時可以自動擴增現有的檔案系統,所有的檔案系統便可使用這個新的空間。ZFS 也有數個不同的屬性可以套用到各別檔案系統上,比起單一檔案系統,對建立數個不同檔案系統與資料集 (Dataset) 時有許多的好處。
本文及其他文件,可由此下載: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/。
若有 FreeBSD 方面疑問,請先閱讀
FreeBSD 相關文件,如不能解決的話,再洽詢
<questions@FreeBSD.org>。
關於本文件的問題,請洽詢
<doc@FreeBSD.org>。