zfs文件系統(tǒng)優(yōu)缺點(diǎn) linux環(huán)境如何快速構(gòu)造42億個(gè)文件?
linux環(huán)境如何快速構(gòu)造42億個(gè)文件?Linux最重要的特性之一是支持多種文件系統(tǒng)。這使得它更加靈活,可以與許多其他操作系統(tǒng)共存。在撰寫本文時(shí),Linux已經(jīng)支持15種文件系統(tǒng):ext、ext2、X
linux環(huán)境如何快速構(gòu)造42億個(gè)文件?
Linux最重要的特性之一是支持多種文件系統(tǒng)。這使得它更加靈活,可以與許多其他操作系統(tǒng)共存。在撰寫本文時(shí),Linux已經(jīng)支持15種文件系統(tǒng):ext、ext2、Xia、minix、umsdos、msdos、vfat、proc、SMB、NCP、iso9660、sysv、hpfs、affs和ufs。毫無疑問,未來支持的文件系統(tǒng)類型將會(huì)增加。
Linux和Unix不使用設(shè)備標(biāo)識(shí)符(如設(shè)備號或驅(qū)動(dòng)器名)來訪問獨(dú)立的文件系統(tǒng),而是通過將整個(gè)文件系統(tǒng)表示為單個(gè)實(shí)體的分層樹結(jié)構(gòu)來訪問它們。每次Linux掛載一個(gè)文件系統(tǒng),它都會(huì)被添加到文件系統(tǒng)層次結(jié)構(gòu)樹中。無論文件系統(tǒng)屬于哪種類型,它都連接到一個(gè)目錄,并且該文件系統(tǒng)上的文件將替換該目錄中的現(xiàn)有文件。這個(gè)目錄稱為安裝點(diǎn)或安裝目錄。卸載該文件系統(tǒng)后,該安裝目錄中的原始文件將再次出現(xiàn)。
當(dāng)磁盤被初始化(使用fdisk)時(shí),描述物理磁盤的邏輯組成的分區(qū)結(jié)構(gòu)將被添加到磁盤中。每個(gè)分區(qū)可以有一個(gè)獨(dú)立的文件系統(tǒng),如EXT2。文件系統(tǒng)將文件組織成一個(gè)邏輯層次結(jié)構(gòu),包括目錄、軟連接等等,它們存在于物理塊設(shè)備中。包含文件系統(tǒng)的設(shè)備稱為塊設(shè)備。Linux文件系統(tǒng)認(rèn)為這些塊設(shè)備是簡單的線性塊集合,它并不 不關(guān)心或不理解底層的物理磁盤結(jié)構(gòu)。這項(xiàng)工作由塊設(shè)備驅(qū)動(dòng)程序完成,它將特定塊的請求映射到正確的設(shè)備;保存該塊所在硬盤的相應(yīng)磁道、扇區(qū)和列。無論哪個(gè)設(shè)備持有這個(gè)塊,文件系統(tǒng)都必須使用相同的方法來查找和操作這個(gè)塊。Linux文件系統(tǒng)沒有。;(至少對于系統(tǒng)用戶來說)系統(tǒng)中的哪些不同的控制器控制哪些不同的物理介質(zhì),并且在這些物理介質(zhì)上有幾個(gè)不同的文件系統(tǒng)。文件系統(tǒng)甚至可以在通過網(wǎng)絡(luò)連接的遠(yuǎn)程硬盤上,而不是在本地系統(tǒng)上。有一個(gè)SCSI硬盤,根目錄如下:
一個(gè)E boot等庫選擇tmp usr
C F cdrom fd proc根變量sbin
D bin dev home mnt失物招領(lǐng)
此時(shí),用戶和程序都不需要知道他們正在操作的這些文件中的/C實(shí)際上位于系統(tǒng)的第一個(gè)IDE硬盤上,并且已經(jīng)安裝了VFAT文件系統(tǒng)。在本例中,/E表示系統(tǒng)中第二個(gè)IDE控制器上的主IDE硬盤。它不 第一個(gè)IDE控制器是PCI控制器,第二個(gè)是控制IDE CDROM的ISA控制器。使用調(diào)制解調(diào)器時(shí)當(dāng)通過PPP網(wǎng)絡(luò)協(xié)議撥入網(wǎng)絡(luò)時(shí),您可以在/mnt/remote目錄中安裝阿爾法AXP Linux文件系統(tǒng)。
文件系統(tǒng)中的文件是數(shù)據(jù)的集合;包含本章的文件是一個(gè)名為filesystems.tex的ASCII文件。文件系統(tǒng)不僅包含文件中的數(shù)據(jù),還包含文件系統(tǒng)的結(jié)構(gòu)。Linux用戶和程序看到的所有文件、目錄、軟連接和文件保護(hù)信息都存儲(chǔ)在里面。此外,文件系統(tǒng)必須包含安全信息,以維護(hù)操作系統(tǒng)的完整性。沒有人愿意使用一個(gè)容易丟失數(shù)據(jù)和文件的操作系統(tǒng)。
Linux最早的文件系統(tǒng)是Minix,非常有限,性能很低。它的文件名可以 t不超過14個(gè)字符(雖然比8.3文件名好),最大文件大小為64 MB。64M字節(jié)看起來很大,但實(shí)際上一個(gè)中等規(guī)模的數(shù)據(jù)庫會(huì)超過這個(gè)大小。第一個(gè)專門為Linux設(shè)計(jì)的文件系統(tǒng)被稱為擴(kuò)展文件系統(tǒng)或
omv nas 優(yōu)缺點(diǎn)?
優(yōu)點(diǎn)是omv nas基于BSD內(nèi)核,在BSD上實(shí)現(xiàn)的ZFS文件系統(tǒng)具有硬盤快照、數(shù)據(jù)校驗(yàn)、數(shù)據(jù)恢復(fù)等實(shí)用功能。ZFS實(shí)現(xiàn)的硬盤陣列RAID-Z2和RAID-Z3性能非常出色。同時(shí),經(jīng)過多年的發(fā)展,F(xiàn)reeNAS擁有豐富全面的官方插件和活躍的社區(qū)。
缺點(diǎn)是omv nas使用內(nèi)存作為數(shù)據(jù)緩存來優(yōu)化性能,所以理論上ZFS需要ecc內(nèi)存來進(jìn)行數(shù)據(jù)驗(yàn)證。目前常用的ecc硬件平臺(tái)有:X58、X79、X99、銳龍平臺(tái)。這些至強(qiáng)平臺(tái)都是使用recc ddr3/ddr4內(nèi)存,但是機(jī)齡較長,使用壽命比較有問題。銳龍平臺(tái)采用純ecc內(nèi)存,但是銳龍集成顯示驅(qū)動(dòng)安裝困難。另外,BSD內(nèi)核對于linux通用軟件版本管理器和docker支持也不是那么好。