《ZFS文件系統(tǒng)簡介》要點:
本文介紹了ZFS文件系統(tǒng)簡介,希望對您有用。如果有疑問,可以聯(lián)系我們。
ZFS熟悉Solaris的兄弟一定不會陌生,它就是Solaris10上推出的文件系統(tǒng),有著諸如平滑擴容,秒級回滾等諸多優(yōu)點,而且結(jié)合Solaris的zone堪稱完美.
ZFS(Zettabyte File System)是由SUN公司的Jeff Bonwick領(lǐng)導設(shè)計的一種基于Solaris的文件系統(tǒng),最初發(fā)布于20014年9月14日. SUN被Oracle收購后,現(xiàn)在稱為Oracle Solaris ZFS.單個ZFS文件系統(tǒng)最多支持 256 quadrillion zettabytes (ZB), 1ZB等于2的70次方字節(jié).相對于傳統(tǒng)的EXT、XFS、JFS、ReiserFS或NTFS,ZFS的一個重要側(cè)重點就是突出了對數(shù)據(jù)完整性的保護.
ZFS 文件系統(tǒng)是一種革新性的新文件系統(tǒng),可從根本上改變文件系統(tǒng)的管理方式,并具有目前面市的其他任何文件系統(tǒng)所沒有的功能和優(yōu)點.ZFS 強健可靠、可伸縮、易于管理.因為其先進性,ZFS被稱為最后文件系統(tǒng),21世紀最好的操作系統(tǒng),也曾經(jīng)被蘋果用于Mac OSX 10.5操作系統(tǒng)中,但是當Mac OSX10.6雪豹發(fā)布時,大家發(fā)現(xiàn)蘋果完全棄用了ZFS.原因可能是,當Oracle收購SUN時,Oracle自己已經(jīng)有了開源文件系統(tǒng)BTRFS,外界認為它無力分身繼續(xù)ZFS的開發(fā);另一方面,Netapp稱ZFS文件系統(tǒng)侵犯其WAFL專利技術(shù),綜合這些,蘋果最終停止支持ZFS文件系統(tǒng).
ZFS 池存儲
ZFS 使用存儲池的概念來管理物理存儲.以前,文件系統(tǒng)是在單個物理設(shè)備的基礎(chǔ)上構(gòu)造的.為了利用多個設(shè)備和提供數(shù)據(jù)冗余性,引入了卷管理器的概念來提供單個設(shè)備的表示,以便無需修改文件系統(tǒng)即可利用多個設(shè)備.此設(shè)計增加了更多復雜性,并最終阻礙了特定文件系統(tǒng)的繼續(xù)發(fā)展,因為這類文件系統(tǒng)無法控制數(shù)據(jù)在虛擬卷上的物理放置.
ZFS 可完全避免使用卷管理.ZFS 將設(shè)備聚集到存儲池中,而不是強制要求創(chuàng)建虛擬卷.存儲池說明了存儲的物理特征(設(shè)備布局、數(shù)據(jù)冗余等),并充當可以從其創(chuàng)建文件系統(tǒng)的任意數(shù)據(jù)存儲庫.文件系統(tǒng)不再僅限于單個設(shè)備,從而可與池中的所有文件系統(tǒng)共享磁盤空間.您不再需要預先確定文件系統(tǒng)的大小,因為文件系統(tǒng)會在分配給存儲池的磁盤空間內(nèi)自動增長.添加新存儲器后,無需執(zhí)行其他操作,池中的所有文件系統(tǒng)即可立即使用所增加的磁盤空間.在許多方面,存儲池與虛擬內(nèi)存系統(tǒng)相似:將一個內(nèi)存 DIMM 加入系統(tǒng)時,操作系統(tǒng)并不強迫您運行命令來配置內(nèi)存并將其指定給個別進程.系統(tǒng)中的所有進程都會自動使用所增加的內(nèi)存.
事務(wù)性語義
ZFS 是事務(wù)性文件系統(tǒng),這意味著文件系統(tǒng)狀態(tài)在磁盤上始終是一致的.傳統(tǒng)文件系統(tǒng)可就地覆寫數(shù)據(jù),這意味著如果系統(tǒng)斷電(例如,在分配數(shù)據(jù)塊到將其鏈接到目錄中的時間段內(nèi)斷電),則會使文件系統(tǒng)處于不一致狀態(tài).以前,此問題是通過使用 fsck 命令解決的.此命令負責檢查并驗證文件系統(tǒng)狀態(tài),并嘗試在操作過程中修復任何不一致性.這種文件系統(tǒng)不一致問題曾給管理員造成巨大困擾,fsck 命令并不保證能夠解決所有可能的問題.最近,文件系統(tǒng)引入了日志記錄的概念.日志記錄過程在單獨的日志中記錄操作,在系統(tǒng)發(fā)生崩潰時,可以安全地重放該日志.由于數(shù)據(jù)需要寫入兩次,因此該過程會引入不必要的開銷,而且通常會導致一組新問題,例如在無法正確地重放日志時.
對于事務(wù)性文件系統(tǒng),數(shù)據(jù)是使用寫復制語義管理的.數(shù)據(jù)永遠不會被覆寫,并且任何操作序列會全部被提交或全部被忽略.因此,文件系統(tǒng)絕對不會因意外斷電或系統(tǒng)崩潰而被損壞.盡管最近寫入的數(shù)據(jù)片段可能丟失,但是文件系統(tǒng)本身將始終是一致的.此外,只有在寫入同步數(shù)據(jù)(使用 O_DSYNC 標志寫入)后才返回,因此同步數(shù)據(jù)決不會丟失.
校驗和與自我修復數(shù)據(jù)
對于 ZFS,所有數(shù)據(jù)和元數(shù)據(jù)都通過用戶可選擇的校驗和算法進行驗證.提供校驗和驗證的傳統(tǒng)文件系統(tǒng)出于卷管理層和傳統(tǒng)文件系統(tǒng)設(shè)計的必要,會逐塊執(zhí)行此操作.在傳統(tǒng)設(shè)計中,某些故障可能導致數(shù)據(jù)不正確但沒有校驗和錯誤,如向錯誤位置寫入完整的塊等.ZFS 校驗和的存儲方式可確保檢測到這些故障并可以正常地從其中進行恢復.所有校驗和驗證與數(shù)據(jù)恢復都是在文件系統(tǒng)層 執(zhí)行的,并且對應用程序是透明的.
此外,ZFS 還會提供自我修復數(shù)據(jù).ZFS 支持存儲池具有各種級別的數(shù)據(jù)冗余性.檢測到壞的數(shù)據(jù)塊時,ZFS 會從另一個冗余副本中提取正確的數(shù)據(jù),而且會用正確的數(shù)據(jù)替換錯誤的數(shù)據(jù).
獨一無二的可伸縮性
ZFS 文件系統(tǒng)的一個關(guān)鍵設(shè)計要素是可伸縮性.該文件系統(tǒng)本身是 128 位的,所允許的存儲空間是 256 quadrillion zettabyte (256×1015 ZB).所有元數(shù)據(jù)都是動態(tài)分配的,因此在首次創(chuàng)建時無需預先分配 inode,否則就會限制文件系統(tǒng)的可伸縮性.所有算法在編寫時都考慮到了可伸縮性.目錄最多可以包含 248(256 萬億)項,并且對于文件系統(tǒng)數(shù)或文件系統(tǒng)中可以包含的文件數(shù)不存在限制.
ZFS 快照
快照是文件系統(tǒng)或卷的只讀副本.可以快速而輕松地創(chuàng)建快照.最初,快照不會占用池中的任何附加磁盤空間.
活動數(shù)據(jù)集中的數(shù)據(jù)更改時,快照通過繼續(xù)引用舊數(shù)據(jù)來占用磁盤空間.因此,快照可防止將數(shù)據(jù)釋放回池中.
簡化的管理
最重要的是,ZFS 提供了一種極度簡化的管理模型.通過使用分層文件系統(tǒng)布局、屬性繼承以及自動管理掛載點和 NFS 共享語義,ZFS 可輕松創(chuàng)建和管理文件系統(tǒng),而無需使用多個命令或編輯配置文件.可以輕松設(shè)置配額或預留空間,啟用或禁用壓縮,或者通過單個命令管理許多文件系統(tǒng)的掛載點.您就可以檢查或替換設(shè)備,而無需學習另外的一套卷管理命令.您可以發(fā)送和接收文件系統(tǒng)快照流
ZFS 通過分層結(jié)構(gòu)管理文件系統(tǒng),該分層結(jié)構(gòu)允許對屬性(如配額、預留空間、壓縮和掛載點)進行這一簡化管理.在此模型中,文件系統(tǒng)是中央控制點.文件系統(tǒng)本身的開銷非常小(相當于創(chuàng)建一個新目錄),因此鼓勵您為每個用戶、項目、工作區(qū)等創(chuàng)建一個文件系統(tǒng).通過此設(shè)計,可定義細分的管理點.
參考http://zh.wikipedia.org/zh/ZFS
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/4697.html