(ext2,ext3,reiserfs,xfs,jfs)文件系統的性能測試

幾種文件系統

 ReiserFS是一個非常優秀的文件系統。也是最早用於的日誌文件系統之一。ReiserFS的開發者非常有魄力,整個文件系統完全是從頭設計 的。目前,ReiserFS可輕鬆管理上百G的文件系統,這在企業級應用中非常重要。ReiserFS有先進的日誌(Journaling/logging)功能 機制。日誌機制保證了在每個實際數據修改之前,相應的日誌已經寫入硬盤。文件與數據的安全性有了很大提高。Reiserfs對一些小文件不分配inode。而是將這些文件打包,存放在同一個磁盤分塊中。而其它文件系統則爲每個小文件分別放置到一個磁盤分塊 中。這意味着:如果有10000個小文件,就要佔用10000個分塊。想想看這多浪費磁盤空間。ReiserFS基於快速平衡樹(balanced tree)搜索,平衡樹在性能上非常卓越,這是一種非常高效的算法。ReiserFS搜索大量文件時,搜索速度要比ext2快得多。Reiserfs文件 系統使用B*Tree存儲文件,而其它文件系統使用B+Tree樹。B*Tree查詢速度比B+Tree要快很多。Reiserfs在文件定位上速度非常 快。 在實際運用中,ReiserFS 在處理小於 1k 的文件時,比ext2 快 到 15 倍!ReiserFS 幾乎在各個方面都優於 ext2.


 

Ext2: 是 GNU/Linux 系統中標準的文件系統,其特點爲存取文件的性能極好,對於中小型的文件更顯示出優勢,這主要得利於其簇快取層的優良 設計。其單一文件大小與文件系統本身的容量上限與文件系統本身的簇大小有關,在一般常見的 x86 電腦系統中,簇最大爲 4KB, 則單一文件大小上限 爲 2048GB, 而文件系統的容量上限爲 16384GB。但由於目前核心 2.4 所能使用的單一分割區最大隻有 2048GB,因此實際上能使用 的文件系統容量最多也只有 2048GB。 


 

Ext3是一種一種日誌文件系統,是Ext2的擴展,文件系統在記錄數據時,一般都會先寫在緩存中,然後再寫入磁盤;然而當突然出現故障時,數據無法寫入磁盤,此時就會造成數據的丟失,而ext3文件系統就能根據日誌追溯功能,能夠重新找到數據,避免數據的丟失。


 

XFS 是 Silicon GraphicsInc. 於 90 年代初開發的。它至今仍作爲 SGI 基於 IRIX 的產品(從工作站到超級計算機)的底層文件系統來使用。由於採用緩存數據、延時智能存儲,在操作大文件時,有一定的優勢XFS 是一個全64-bit的文件系統,它可以支持上百萬T字節的存儲空間。對特大文件及小尺寸文件的支持都表現出衆,支持特大數量的目錄。最大可支持的文件大小爲263 = 9 x 1018 = 9 exabytes,最大文件系統尺寸爲18 exabytes。   XFS使用高的表結構(B+),保證了文件系統可以快速搜索與快速空間分配。XFS能夠持續提供高速操作,文件系統的性能不受目錄中目錄及文件數量的限制。 


JFSIBM公司爲linux系統開發的一個日誌文件系統。從IBM的實力及它對Linux的態度來看,JFS應該是未來日誌文件系統中最具實力的一個文件系統。JFS提供了基於日誌的字節級文件系統,該文件系統是爲面向事務的高性能系統而開發的。JFS 能夠在幾秒或幾 分鐘內就把文件系統恢復到一致狀態。JFS能夠保證數據在任何意外宕機的情況下,不會造成磁盤數據的丟失與損壞

 

以上內容摘自互聯網,筆者理解,現在以“數據無價”爲主的時代,良好的文件系統,對數據的存儲有很大的影響,不僅要滿足快速寫數據,還要滿足數據的完整性和安全性,故很大的文件系統都會以日誌記錄相應的一份數據,防止數據在存儲時發生錯誤;同時隨着數據的大量擁集,同時要求支持較大的存儲數據的能力和快速的寫數據能力,但一切都不是絕對的,人無完人何況是人發明的文件系統,我們只能在實際生產中,依據生產需要,選擇合適的文件系統,講了那麼多,筆者就依據自己的系統簡單測試這幾種文件系統的性能,供大家以後實際應用中參考。

 


筆者用的是虛擬機環境,系統是redhat 5.4,由於此內核中無法正常支持xfs,筆者就下載內核安裝包,使其能夠支持xfs

安裝支持xfs的內核:

kernel-PAE-2.6.18-274.3.1.el5.centos.plus.i686.rpm

kmod-xfs-PAE-0.4-2.i686.rpm

重啓系統,選擇剛安裝的內核。

 

安裝xfs,及管理jfsreiserfs的工具包:

 

  1. #rpm  -ivh  kmod-xfs-0.4-2.i686.rpm 
  2. #rpm  -ivh  xfsprogs-2.9.4-1.el5.centos.i386.rpm 
  3. #rpm  -ivh  jfsutils-1.1.12-1.i386.rpm 
  4. #rpm  -ivh  reiserfs-utils-3.6.19-2.4.1.i386.rpm 

 

 

加載xfs系統:

#modprobe   xfs

 

安裝測試文件系統性能的工具:

#rpm  -ivh  iozone-3-397.i386.rpm

相關命令的介紹:

Iozone可測試的文件系統的性能:讀,寫,重讀,重寫,後向讀,條帶讀,隨機讀,隨機寫,異步

 

  1. -a  使用全自動的模式  64k---512M 
  2. -b  將測試的結果保存到指定文件 
  3. -R  保存爲excel文件,生成excel報告信息 
  4. -z  包含一些不常用的大小 
  5. -f  測試固定文件 
  6. -g  設置最大文件大小,最大測試文件4G 
  7. -n  設置下限 
  8. -s  指定測試文件固定大小 
  9. -y  指定測試塊的大小範圍 
  10. -q  結合y選項使用 
  11. -r  指定一次寫入/讀出的塊大小 
  12. -i N 用來選擇測試項, 比如Read/Write/Random 比較常用的是0 1 2,可以指定成-i 0 -i 1 -i2.這些別的詳細內容請查man   0=write/rewrite   1=read/re-read   2=random-read/write   3=Read-backwards   4=Re-write-record   5=stride-read   6=fwrite/re-fwrite   7=fread/Re-fread   8=random mix   9=pwrite/Re-pwrite   10=pread/Re-pread   11=pwritev/Re-pwritev   12=preadv/Re-preadv  

 

 

測試ext2文件系統:

 

  1. # mke2fs /dev/sdb5 
  2. #mkdir   /test 
  3. #mount   /dev/sdb5   /test 
  4. #iozone -a -s 128M -y 512 -q 16384 -i 0 -i 1 -i 2 -f /test/a.out -Rb /root/ext2.wks 

 

命令說明:使用iozone工具,128M爲指定的測試文件的大小,16384爲指定測試塊的大小,單位爲字節,-i指定對哪些性能進行測試,這裏指定的是寫/重寫,讀/重讀,隨機讀/隨機重讀,/test/a.out爲在測試的分區上寫數據的文件名,/root/ext2.wks爲輸出的表格報告信息)

測試ext3文件系統:

 

  1. #umount   /dev/sdb5 
  2. #mke2fs -j  /dev/sdb5 
  3. #mount   /dev/sdb5   /test 
  4. #iozone -a -s 128M -y 512 -q 16384 -i 0 -i 1 -i 2 -f /test/b.out -Rb /root/ext3.wks 

 

測試reiserfs文件系統:

 

  1. #umount   /dev/sdb5 
  2. #mkfs.reiserfs  /dev/sdb5 
  3. #mount   /dev/sdb5   /test 
  4. #iozone -a -s 128M -y 512 -q 16384 -i 0 -i 1 -i 2 -f /test/c.out -Rb /root/reiserfs.wks 

 

測試xfs文件系統:

 

  1. #umount   /dev/sdb5 
  2. #mkfs.xfs    /dev/sdb5 
  3. #mount   /dev/sdb5   /test 
  4. #iozone -a -s 128M -y 512 -q 16384 -i 0 -i 1 -i 2 -f /test/d.out -Rb /root/xfs.wks 

 

測試jfs文件系統:

 

  1. #umount   /dev/sdb5 
  2. #mkfs.jfs    /dev/sdb5 
  3. #mount   /dev/sdb5   /test 
  4. #iozone -a -s 128M -y 512 -q 16384 -i 0 -i 1 -i 2 -f /test/e.out -Rb /root/jfs.wks 

 

 

將生成的表格數據拷入excel表中並製圖

 

 

 

 

 

 

性能測試孰高孰低,大家自見分曉!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章