Ext2、Ext3、Jfs、Xfs、Reiserfs文件系統性能大測試

    衆所周知,linux標準文件系統呈現出多種風格。如果我們沒有特殊的需要,就可以直接使用普通的Ext2文件系統。如果我們想避免系統崩潰後冗長的文件系統檢測,就可以切換到Ext3文件系統。如果我們不得不處理許多的小文件,ReiserFS是最好的選擇。除了這幾個問價系統之外,在linux中還可以使用另外幾個日誌文件系統,這些文件系統就包括了IBM AIX的日誌文件系統JFS和SGI公司IRIX系統上的XFS文件系統。
     既然有這麼多文件系統可以使用,那麼我們選擇哪個呢?下面我們就對這幾個文件系統進行測試,來看看他們的優缺點,當我們詳細掌握的這些情況,那麼實現文件系統的優化也就是小菜了。

測試環境: 
     由於硬件資源有限,所以使用的是Vmware虛擬機,版本號爲:VMware-workstation-full-8.0.0-471780
系統內核版本: kernel-PAE-2.6.18-274.3.1.el5.centos.plus.i686
物理內存:1G
在測試的時候物理主機只運行了Vmware這一個必要的程序,並且Vmware只運行了這一個虛擬主機。
每個測試的分區均大小爲1G

測試工具

      我們此次使用的測試工具爲iozone,這個工具不僅能夠對文件系統進行專業的測試,測試結果還能保存爲文件並能夠使用Excel對結果進行分析繪圖,使測試結果以圖形的形式直接顯示出來,更便於我們對結果進行分析。

測試範圍:

      因爲Ext3文件系統擁有三種調度器(journal、ordered和wrirteback),每種調度器有其專屬的調度算法,Ext3使用不同的調度器所表現的性能也是不同的,所以我們要對Ext3在使用redered和writeback這兩種不同調度器的性能進行測試,因此我們的要對Ext2、Ext3(redered、writeback)、JFS、XFS和ReiserFS文件系統的read(讀)、re-read(重讀)、write(寫)、rewrite(重寫)、random-read(隨機讀)和random-write(隨機寫)數據的基本性能進行測試。

測試過程
一、準備工作
1、準備需要的相關文件系統和測試工具的rpm包
jfsutils-1.1.12-1.i386.rpm                         
kernel-PAE-2.6.18-274.3.1.el5.centos.plus.i686.rpm 
reiserfs-utils-3.6.19-2.4.1.i386.rpm
kmod-xfs-PAE-0.4-2.i686.rpm
kmod-xfs-0.4-2.i686.rpm                            
xfsprogs-2.9.4-1.el5.centos.i386.rpm
iozone-3-397.i386.rpm

2、安裝測試工具iozone

rpm -ivh iozone-3-397.i386.rpm
這個測試工具的默認安裝路徑很是詭異,在/opt下,爲了以後方便iozone命令的使用,將iozone工具的所有命令加入變量PATH中並永久有效,具體方法如下:
vim /etc/profile
在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC這行之上加入下面內容:
PATH=$PATH:/opt/iozone/bin 
結果如圖所示:
2011-09-23 19-09-19
保存退出之後執行下列命令,重新加載這個文件的變量
source /etc/profile

   說明:如果我們現在使用的不是centos系統,就下載centos內核rpm包進行安裝,以能夠完全支持這幾個文件系統,本測試所使用的centos內核rpm包爲:kernel-PAE-2.6.18-274.3.1.el5.centos.plus.i686.rpm
  安裝過程:
  rpm -ivh  kernel-PAE-2.6.18-274.3.1.el5.centos.plus.i686.rpm 
  安裝完成之後,必須重新啓動系統並加載新的內核即可。

二、安裝文件系統

1、安裝JFS文件系統
rpm -ivh jfsutils-1.1.12-1.i386.rpm
安裝JFS文件系統模塊
modprobe jfs

2、安裝ReiserFS文件系統
rpm -ivh reiserfs-utils-3.6.19-2.4.1.i386.rpm
安裝ReiserFS文件系統模塊
modprobe reiserfs

3、安裝XFS文件系統
rpm -ivh kmod-xfs-0.4-2.i686.rpm
rpm -ivh xfsprogs-2.9.4-1.el5.centos.i386.rpm
rpm -ivh kmod-xfs-PAE-0.4-2.i686.rpm

安裝XFS文件系統模塊
modprobe xfs

三、創建所要使用的磁盤分區

在自己主機的磁盤上創建5個均爲1G的磁盤分區,這個創建過程就不再敘述了

四、進行測試

1、對Ext2文件系統測試

(1)對創建的一個磁盤進行Ext2文件系統格式化
mkfs.ext2 /dev/sda5  (使用自己的實際磁盤分區編號,我的爲/dev/sda5)

(2)創建掛載點,掛載該分區
mkdir /test
mount /dev/sda5 /test

(3)測試
iozone -a -s 256M -y 256 -i 0 -i 1 -i 2 -f /test/a.test -Rb /root/ext2.wks
   (說明一下這個測試命令的意思:-a 使用全自動模式進行測試,將使用4k、8k一直到16M大小的塊文件分別對磁盤進行測試,這個過程太漫長,我們使用-y指定從256K大小的塊開始進行測試;-s指名被測試文件的大小,如果被測試文件過大,也將要花費大量的時間,所以我們選擇了256M;-i指定對文件系統的哪些操作性能進行測試,0表示write/rewrite,1表示read/re-read,2表示random-read/write;-f 指明被測試的文件,a.test這個文件是自動虛擬的,不需要存在;-b表示測試的結果保存到一個文件中,我選擇爲/root/ext2.wks,-R表示文件可以被excel打開。)

    測試完成之後將在我們設置的對應目錄下生成一個對應名字的文件,則測試成功結束

(4)卸載掛載的磁盤分區
umount /test

2、對使用ordered調度器的Ext3文件系統進行測試

(1)將一個新的磁盤分區格式化爲Ext3格式
mkfs.ext3 /dev/sda6

(2)掛載這個磁盤分區,選擇ordered調度器
mount -o data=ordered /dev/sda6 /test/

(3)對此文件系統進行測試
iozone -a -s 256M -y 256 -i 0 -i 1 -i 2 -f /test/a.test -Rb /root/ext3_ordered.wks

(4)卸載此磁盤分區
mount /test

3、對使用writeback調度器的Ext3文件系統進行測試

(1)將已經格式化爲Ext3的磁盤分區掛載,選擇writeback調度器
mount -o data=writeback /dev/sda6 /test

(2)進行測試
iozone -a -s 256M -y 256 -i 0 -i 1 -i 2 -f /test/a.test -Rb /root/ext3_writeback.wks

(3)卸載此磁盤分區
mount /test

4、對JFS文件系統進行測試

(1)將一個新的磁盤分區格式化爲JFS格式
mkfs.jfs /dev/sda7

(2)掛載此分區
mount /dev/sda7/test/

(3)進行測試
iozone -a -s 256M -y 256 -i 0 -i 1 -i 2 -f /test/a.test -Rb /root/jfs.wks

(4)卸載磁盤分區
mount /test

5、對XFS文件系統進行測試

(1)將一個新的磁盤分區格式化爲XFS格式
mkfs.xfs -f /dev/sda8

(2)掛載此磁盤分區
mount /dev/sda8 /test/

(3)進行測試
iozone -a -s 256M -y 256 -i 0 -i 1 -i 2 -f /test/a.test -Rb /root/xfs.wks

(4)卸載此磁盤分區
mount /test

6、對ReiserFS文件系統進行測試

(1)將一個新的磁盤分區格式化爲ReiserFS格式
mkfs.reiserfs /dev/sda9

(2)掛載此磁盤分區
mount /dev/sda9 /test

(3)對此磁盤分區進行測試
iozone -a -s 256M -y 256 -i 0 -i 1 -i 2 -f /test/a.test -Rb /root/reiserfs.wks

    到此爲止,所有的文件系統已經測試完畢,接下來我們就將這六個測試文件拷貝到有excel軟件的主機上使用excel進行結果整理,將每個測試i結果文件導入excel之後都會顯示如下所示的六行數據:

2011-09-23 22-46-05

將每個文件的相應的操作測試結果進行彙總,並匯成圖,這個過程我就不再解釋,整理結果如下:

Write 操作性能對比:

p_w_picpath

Re-writer 操作性能對比

p_w_picpath

Reader 操作性能能對比

p_w_picpath

Re-reader 操作性能對比

p_w_picpath

Random Read 操作性能對比

p_w_picpath

Random Write 操作性能對比

p_w_picpath

     通過上面六張圖,對每個文件系統針對相同操作性的對比我們就可以清楚的看到它們怎對不同的操作,以及不同的文件大小所表現出的性能差異,針對這些差異,再根據我們系統自身的特點就可以選擇出最適合我們系統的文件系統,這對系統性能本身的優化起着重要作用
     注:由於這是在虛擬機上而非真實物理機上進行的測試,再者沒有選擇足夠多的塊大小以及足夠大的被測試文件進行測試,可能導致結果在一定程度上具有一定的偏差,但這也能基本說明每種文件系統的基本特性,如要想得到確切的測試結果,不妨大家再進行更充足的測試

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