999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Linux系統對btrfs文件系統性能的對比分析

2022-01-19 06:30:16
江蘇通信 2021年6期
關鍵詞:功能

苗 杰

國家計算機網絡應急技術處理協調中心江蘇分中心

0 引言

ext2和ext3文件系統在發展中遇到越來越多的擴展性問題,隨之產生了ext4文件系統。btrfs曾被稱為是下一代Linux文件系統,其目標是為了取代Linux平臺的ext3文件系統。btrfs加入了目前ext3、ext4并未支持的功能,如支持快照功能、具有COW特性(Copy-on-write)、支持創建子卷,以及在線調整文件系統大小等一系列新功能。

1 btrfs文件系統的新特性

btrfs具有extent特性、BTree結構、SSD優化、COW特性、校驗和、快照功能、創建子卷、內建磁盤陣列、延遲分配、內聯文件、目錄索引、預分配和壓縮、修改文件系統大小、文件系統轉化以及debug功能等新特性。本節主要介紹其中如下幾種新特性。

1.1 extent特性(extent feature)

btrfs采用了基于extent的文件存儲來減少元數據開銷,ext4也采用extent的技術來對文件進行存儲。與ext4不同的是,btrfs將所有文件的元數據保存在一個BTree中,而ext4針對每個文件,則單獨用一個BTree來保存元數據。

1.2 BTree結構(BTree structure)

btrfs內部所有元數據都采用BTree管理,相比于ext4采用線性表來存儲目錄文件,則擁有良好的可擴展性。btrfs內部不同的元數據由不同的Tree管理。在superblock中由指針指向這些BTree的根。

1.3 COW特性(Copy-on-write)

btrfs是一種COW(copy-on-write)文件系統,btrfs在普通操作中不會直接覆蓋數據,而是將元數據和數據的新值寫到別的地方,然后在文件系統中指向新的位置,這就提供了強大的一致性和完整性保證。而ext4可以看成是一種overwrite文件系統,當更新數據時,直接對原來的數據內容進行更新。圖1是btrfs進行單一數據COW操作示意圖。

圖1 COW示意圖

A是FS Tree的根節點,若對元數據C進行更新,此時并不會立即更新C。Btrfs首先將元數據插入一個新分配的block C’中,并修改上層節點B,使其指向新的block C’;修改B也將引發COW,依此類推,引發一個連鎖反應,直到最頂層的 root A。整個過程結束,節點A’變成了FS Tree的根節點。Btrfs修改superblock 使其指向A’。圖1僅顯示了更新單一元數據COW過程,但文件系統中很多操作需要更新多個不同的元數據。利用COW 事務能保證文件系統一致性,且系統重啟后不需要執行fsck,因為superblock要么指向A,要么指向A’,無論哪個都是一致的數據。

1.4 校驗和(Checksum)

btrfs采 用checksum技 術 來保證數據的可靠性,btrfs在讀取數據的同時會讀取其相應的checksum,采用單獨的checksum tree來管理數據塊的校驗和,將checksum和checksum保護的數據塊分離開,從而提供更嚴格的保護。ext2/ext3并沒有提供校驗和特性,對磁盤數據完全信任。而ext4采用日志校驗和特性來提高文件系統的可靠性,對數據部分并未提供校驗和保護措施。由于硬件原因,從磁盤上讀出的數據可能會出錯,即使數據從磁盤讀出正確,也很難保證數據在網絡上安全傳輸。

1.5 內聯文件(Inline file)

系統中往往存在大量的小文件,比如幾百個字節甚至更小。如果為其分配單獨的數據block,便會引起內部碎片,浪費磁盤空間。btrfs將小文件的內容保存在元數據中,不再額外分配存放文件數據的磁盤塊。改善了內部碎片問題,也增加了文件的訪問效率。

圖2 為btrfs采用inline file的示意圖。假設現在有文件file1,大小15B,file2 大小為1MB。在BTree中存在一個葉子節點,葉子節點中的extent1 metadata,extent2 metadata 分別用來表示file1和file2的磁盤使用空間。采用inline file,btrfs將大小為15 B的file1直接內嵌在元數據extent1 metadata后面。而對于大小1MB的file2,采用普通的extent表示方法,由extent2 metadata指向一段extent,存放file2。若對file1采用如綠色虛線表示,指向一個extent,由于file1僅有15 B,剩余空間便成了碎片。

圖2 內聯文件示意圖

采用inline file技術,讀file1時只需讀取extent1 metadata的block,而對于file2則先讀取extent2 metadata,再讀取其指向的extent,這便減少了磁盤IO。得益于inline file技術,btrfs處理小文件的效率非常高,也避免了磁盤碎片問題。

1.6 預分配和壓縮(Fallocate and compress)

btrfs文件系統支持對磁盤的預分配,由于所有空間都是一次分配,因而更有可能使用連續的磁盤空間,所以能夠有效減少磁盤碎片。在將數據寫入磁盤之前進行壓縮,有時能夠大大減少磁盤IO的次數,提升IO效率。btrfs內置壓縮功能,從2.6.39內核開始默認采用lzo算法來進行壓縮和解壓,zlib算法則在2.6.39內核版本之前作為默認壓縮解壓算法。然而當壓縮使能后,整個文件系統下的所有文件都將被壓縮。

2 btrfs與ext4文件系統性能的對比

下面主要從如下幾點對btrfs和ext4進行性能對比分析。

(1)對比btrfs和ext4創建不同大小文件系統的性能,其測試結果如表1所示。

表1 創建文件系統性能對比

表1 的圖形效果如圖3所示。

圖3 創建文件系統性能對比

btrfs創建文件系統時,無論磁盤空間大小,僅創建文件系統的元數據,使用磁盤空間時再進行格式化。而ext4在創建文件系統時,不僅創建文件系統元數據,還會對磁盤進行格式化。因此創建文件系統時,ext4比btrfs需要更長的時間。

(2)對比btrfs和ext4刪除不同大小文件的性能,其測試結果如表2所示。

表2 的圖形效果如圖4所示。

表2 刪除文件性能對比

圖4 刪除文件性能對比

btrfs具有目錄索引技術,相比ext4刪除文件,btrfs刪除文件時會同時刪除文件的目錄索引,額外刪除文件的目錄索引需要時間開銷,這是造成btrfs刪除文件的性能比ext4差的原因。

(3)對比btrfs和ext4文件拷貝的性能,其測試結果如表3所示。

表3 的圖形效果如圖5所示。

圖5 文件拷貝性能對比

表3 文件拷貝性能對比

當對目錄下的大量文件進行拷貝時,btrfs是順序讀取文件進行拷貝,而ext4是通過hash方法,文件讀取的效率不如順序讀取,因此btrfs的文件拷貝性能更優。

(4)對比btrfs和ext4文件讀寫性能,利用iozone測試工具得到的結果如表4所示。

表4 文件讀寫性能對比

表4 的圖形效果如圖6所示。

圖6 文件讀寫性能對比

從上述數據可以看出,btrfs文件的隨機讀寫性能明顯優于ext4。由于btrfs的預讀寫緩存大小為4MB,而ext4的預讀寫緩存大小為128KB,這可能是導致btrfs隨機讀寫性能優于ext4的原因。

3 btrfs新功能對讀寫性能的影響

本節主要對btrfs新增的COW功能和壓縮功能進行了性能測試,主要驗證了是否開啟新功能對讀寫性能帶來的影響并進行了測試分析。

(1)對比btrfs的COW功能是否開啟對讀寫性能的影響,其測試結果如表5所示。

表5 COW功能對讀寫性能影響

表5 的圖形效果如圖7所示。

圖7 COW功能對讀寫性能影響

從上述結果可以看出btrfs開啟COW功能雖會涉及元數據操作,但并未對讀寫性能帶來較大影響。

(2)對比btrfs采用不同壓縮算法對讀寫性能的影響,其測試結果如表6所示。

表6 不同壓縮算法性能對比

表6 的圖形效果如圖8所示。

圖8 不同壓縮算法讀寫性能對比

btrfs文件系統默認掛載項并未選擇壓縮算法,若要選擇zlib或lzo壓縮算法,則需要添加相應的掛載參數。從實驗結果看出zlib和lzo壓縮算法均能大幅提升文件的讀寫效率。

4 結束語

本文首先簡要介紹了btrfs文件系統一些功能特性,并對比分析了btrfs與ext4文件系統在創建文件系統、刪除文件、拷貝文件、讀寫文件方面的性能差異。從實驗數據可以看出btrfs在創建文件系統、拷貝文件以及隨機讀寫文件性能明顯優于ext4,但刪除文件性能比ext4差。btrfs具有的COW機制對讀寫性能并未造成明顯影響,選擇btrfs的zlib和lzo算法可以大幅提升文件的讀寫性能。btrfs作為新一代文件系統具有良好的功能特性,目前其僅在Fedora33中成為默認的文件系統,后期有望在Linux平臺得到廣泛使用。

猜你喜歡
功能
拆解復雜功能
鐘表(2023年5期)2023-10-27 04:20:44
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
基層弄虛作假的“新功能取向”
當代陜西(2021年21期)2022-01-19 02:00:26
深刻理解功能關系
鉗把功能創新實踐應用
關于非首都功能疏解的幾點思考
基于PMC窗口功能實現設備同步刷刀功能
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
中西醫結合治療甲狀腺功能亢進癥31例
主站蜘蛛池模板: 国产偷国产偷在线高清| 91小视频在线播放| 特级精品毛片免费观看| 人妻中文字幕无码久久一区| 欧美精品v欧洲精品| 2022国产无码在线| 亚洲日韩高清无码| 99视频只有精品| 99热这里只有精品在线观看| 亚洲色图欧美视频| 亚洲一道AV无码午夜福利| 91精品情国产情侣高潮对白蜜| 人妖无码第一页| 欧美亚洲网| 99精品一区二区免费视频| 91精品国产91久久久久久三级| 国产精品综合久久久| 国产免费a级片| 99ri国产在线| 综合人妻久久一区二区精品 | 成人另类稀缺在线观看| 欧美狠狠干| 国产精品女同一区三区五区| 国产精品久久久久久久久| 国产日本视频91| 久久久久亚洲AV成人人电影软件 | 国产一国产一有一级毛片视频| 国产成人综合日韩精品无码首页 | 无码av免费不卡在线观看| 91无码视频在线观看| 亚洲视频一区在线| 国产AV无码专区亚洲A∨毛片| 97在线国产视频| 欧美一区二区三区香蕉视| 中文字幕在线永久在线视频2020| 久久久久免费看成人影片| 免费人成在线观看成人片| 亚洲91精品视频| 一区二区日韩国产精久久| 久久女人网| 国产欧美日韩另类| 成人免费一区二区三区| 青青国产在线| 四虎国产精品永久一区| 欧美怡红院视频一区二区三区| 午夜精品一区二区蜜桃| 无码在线激情片| 毛片免费高清免费| 久久夜色精品国产嚕嚕亚洲av| 亚洲欧洲一区二区三区| 久久久久亚洲精品成人网| 久久人与动人物A级毛片| 在线中文字幕日韩| 97在线观看视频免费| 国产极品美女在线播放| 欧美午夜理伦三级在线观看| 91高清在线视频| 啪啪免费视频一区二区| 亚洲第一福利视频导航| 日韩一级二级三级| 久久熟女AV| 欧美高清国产| 日本不卡在线| 高潮毛片无遮挡高清视频播放| 精品黑人一区二区三区| 国产自产视频一区二区三区| 国产激情无码一区二区免费| 亚洲最大福利视频网| 91丨九色丨首页在线播放 | 伊人国产无码高清视频| 久久久久久久97| 热这里只有精品国产热门精品| 欧美午夜一区| 国产高清无码麻豆精品| 日韩资源站| 亚洲人成网7777777国产| 人人看人人鲁狠狠高清| 日韩一二三区视频精品| 91毛片网| 国产97区一区二区三区无码| 国产精品污污在线观看网站| 国产精品三区四区|