第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

全部開發(fā)者教程

Linux 入門教程

首頁 慕課教程 Linux 入門教程 Linux 入門教程 42 Linux 寫時復(fù)制文件系統(tǒng)

Linux 寫時復(fù)制文件系統(tǒng)

前小節(jié)介紹了 Linux 日志文件系統(tǒng),本小節(jié)介紹 Linux 寫時復(fù)制文件系統(tǒng)。

1. ZFS 文件系統(tǒng)介紹

ZFS 文件系統(tǒng)的英文名稱為 Zettabyte File System,也叫動態(tài)文件系統(tǒng)(Dynamic File System),是第一個 128 位文件系統(tǒng)。最初是由 Sun 公司為 Solaris 10 操作系統(tǒng)開發(fā)的文件系統(tǒng)。作為 OpenSolaris 開源計劃的一部分,ZFS 于 2005 年 11 月發(fā)布,被 Sun 稱為是終極文件系統(tǒng),經(jīng)歷了 10 年的活躍開發(fā)。而最新的開發(fā)將全面開放,并重新命名為 OpenZFS。

ZFS 是一款 128bit 文件系統(tǒng),總?cè)萘渴乾F(xiàn)有 64bit 文件系統(tǒng)的 1.84x10^19 倍,其支持的單個存儲卷容量達到 16EiB2^64byte,即 16x1024x1024TB);一個 zpool 存儲池可以擁有 2^64 個卷,總?cè)萘孔畲?256ZiB2^78 byte);整個系統(tǒng)又可以擁有 2^64 個存儲 池??梢哉f在相當長的未來時間內(nèi),ZFS 幾乎不太可能出現(xiàn)存儲空間不足的問題。另外,它還擁有自優(yōu)化,自動校驗數(shù)據(jù)完整性,存儲池/卷系統(tǒng)易管理等諸多優(yōu)點。較 ext3 系統(tǒng)有較大運行速率,提高大約 30%-40%。

ZFS 文件系統(tǒng)是一個革命性的全新的文件系統(tǒng),它從根本上改變了文件系統(tǒng)的管理方式,這個文件系統(tǒng)的特色和其帶來的好處至今沒有其他文件系統(tǒng)可以與之媲美,ZFS 被設(shè)計成強大的、可升級并易于管理的。ZFS 用 “存儲池” 的概念來管理物理存儲空間。過去,文件系統(tǒng)都是構(gòu)建在物理設(shè)備之上的。為了管理這些物理設(shè)備,并為數(shù)據(jù)提供冗余,“卷管理” 的概念提供了一個單設(shè)備的映像。但是這種設(shè)計增加了復(fù)雜性,同時根本沒法使文件系統(tǒng)向更高層次發(fā)展,因為文件系統(tǒng)不能跨越數(shù)據(jù)的物理位置。

ZFS 完全拋棄了 “卷管理”,不再創(chuàng)建虛擬的卷,而是把所有設(shè)備集中到一個存儲池中來進行管理,“存儲池” 描述了存儲的物理特征(設(shè)備的布局,數(shù)據(jù)的冗余等等),并扮演一個能夠創(chuàng)建文件系統(tǒng)的專門存儲空間。從此,文件系統(tǒng)不再局限于單獨的物理設(shè)備,而且文件系統(tǒng)還允許物理設(shè)備把他們自帶的那些文件系統(tǒng)共享到這個 “池” 中。你也不再需要預(yù)先規(guī)劃好文件系統(tǒng)的大小,因為文件系統(tǒng)可以在 “池” 的空間內(nèi)自動的增大。當增加新的存貯介質(zhì)時,所有 “池” 中的所有文件系統(tǒng)能立即使用新增的空間,而不需要額外的操作。在很多情況下,存儲池扮演了一個虛擬內(nèi)存。

ZFS 使用一種寫時拷貝事務(wù)模型技術(shù)。所有文件系統(tǒng)中的塊指針都包括 256 位的能在讀時被重新校驗的關(guān)于目標塊的校驗和。含有活動數(shù)據(jù)的塊從來不被覆蓋;而是分配一個新塊,并把修改過的數(shù)據(jù)寫在新塊上。所有與該塊相關(guān)的元數(shù)據(jù)塊都被重新讀、分配和重寫。為了減少該過程的開銷,多次讀寫更新被歸納為一個事件組,并且在必要的時候使用日志來同步寫操作。

利用寫時拷貝使 ZFS 的快照和事物功能的實現(xiàn)變得更簡單和自然,快照功能更靈活。缺點是,COW 使碎片化問題更加嚴重,對于順序?qū)懮傻拇笪募?,如果以后隨機的對其中的一部分進行了更改,那么這個文件在硬盤上的物理地址就變得不再連續(xù),未來的順序讀會變得性能比較差。

2. BTRFS 文件系統(tǒng)介紹

BTRFS(通常念成 Butter FS),由 Oracle 于 2007 年宣布并進行中的 COW(copy-on-write 式)文件系統(tǒng)。目標是取代 Linux ext3 文件系統(tǒng),改善 ext3 的限制,特別是單一文件大小的限制,總文件系統(tǒng)大小限制以及加入文件校驗和特性。加入 ext3/4 未支持的一些功能,例如可寫的磁盤快照(snapshots),以及支持遞歸的快照(snapshots of snapshots),內(nèi)建磁盤陣列(RAID)支持,支持子卷(Subvolumes)的概念,允許在線調(diào)整文件系統(tǒng)大小。

首先是擴展性 (scalability) 相關(guān)的特性,btrfs 最重要的設(shè)計目標是應(yīng)對大型機器對文件系統(tǒng)的擴展性要求。 Extent、B-Tree 和動態(tài) inode 創(chuàng)建等特性保證了 btrfs 在大型機器上仍有卓越的表現(xiàn),其整體性能而不會隨著系統(tǒng)容量的增加而降低。其次是數(shù)據(jù)一致性 (data integrity) 相關(guān)的特性。系統(tǒng)面臨不可預(yù)料的硬件故障,Btrfs 采用 COW 事務(wù)技術(shù)來保證文件系統(tǒng)的一致性。 btrfs 還支持 checksum,避免了 silent corrupt 的出現(xiàn)。而傳統(tǒng)文件系統(tǒng)則無法做到這一點。第三是和多設(shè)備管理相關(guān)的特性。 Btrfs 支持創(chuàng)建快照 (snapshot),和克隆 (clone) 。 btrfs 還能夠方便的管理多個物理設(shè)備,使得傳統(tǒng)的卷管理軟件變得多余。最后是其他難以歸類的特性。這些特性都是比較先進的技術(shù),能夠顯著提高文件系統(tǒng)的時間/空間性能,包括延遲分配,小文件的存儲優(yōu)化,目錄索引等。

3. BTRFS 文件系統(tǒng)特性

  • 可由底層多個物理卷進行支持。

  • 數(shù)據(jù)存儲形式支持 RAID,同時在聯(lián)機的情況下進行“添加硬盤”、“移除硬盤”、“修改文件系統(tǒng)的大小”。

  • 支持寫時復(fù)制更新機制,即當我們修改文件時,btrfs先復(fù)制一份原文件,對新文件進行修改,結(jié)束時,原文件名指向新文件。

  • 支持卷的快照和快照的快照。

  • 透明壓縮,即當文件系統(tǒng)存儲文件時,文件系統(tǒng)會自動將文件進行壓縮再存儲,當提取時,文件系統(tǒng)自動進行解壓縮,但是用戶看不到此過程。

  • 擴展性 (scalability),btrfs 最重要的設(shè)計目標是應(yīng)對大型機器對文件系統(tǒng)的擴展性要求。ExtentB-Tree、inode 創(chuàng)建等特性保證了 btrfs 在大型機器上仍有卓越的表現(xiàn),其整體性能而不會隨著系統(tǒng)容量的增加而降低。

  • 數(shù)據(jù)一致性 (data integrity)。系統(tǒng)面臨不可預(yù)料的硬件故障,Btrfs 采用 COW 事務(wù)技術(shù)來保證文件系統(tǒng)的一致性。 btrfs 還支持 checksum,避免了 silent corrupt 的出現(xiàn)。而傳統(tǒng)文件系統(tǒng)則無法做到這一點。

  • 多設(shè)備管理相關(guān)的特性。 Btrfs 支持創(chuàng)建快照 (snapshot)、克隆 (clone) 。 btrfs 還能夠方便的管理多個物理設(shè)備,使得傳統(tǒng)的卷管理軟件變得多余。

4. 小結(jié)

本小節(jié)介紹了 ZFS、BTRFS 兩種寫時復(fù)制文件系統(tǒng),寫時復(fù)制文件系統(tǒng)采用了日志式技術(shù),你就必須在安全性和性能之間選擇,盡管數(shù)據(jù)模式日志提供了最高的安全性,但是會對性能帶來影響,因為索引節(jié)點和數(shù)據(jù)都需要被日志化,就文件系統(tǒng)而言,日志式的另一種選擇是一種叫 寫時復(fù)制 的技術(shù)。