Total Pageviews

Thursday, 21 September 2017

ext3, ext4 和 reiserfs文件系统的性能对比

通过使用下面几个方面来对ext3,ext4和reiserfs来做一个性能测试:
  1. 创建空文件10000个的耗时
  2. 创建小文件,每个小文件使用512个blocks,一共创建10000个
  3. 创建一个2G文件的耗时
  4. 复制2G文件的耗时
  5. 删除2G大文件的耗时
  6. 删除10000个小文件的耗时
测试系统RHEL5 update 3,内核2.6.18.128-el5,SATA硬盘。测试用同一个4G的分区来做。我每一类测试做了3次,取所需时间的平均数。
测试结果统计(使用time工具来计时):
任务文件系统EXT3EXT4Reiserfs
建立空文件0m13.1090m12.9770m13.046
建立小文件1m55.5831m15.2531m0.192
建立大文件0m43.580m37.9420m40.288
复制大文件1m30.5371m22.8981m28.705
删除大文件0m2.2180m0.2460m0.371
删除小文件0m54.4970m0.9020m0.979
根据这个不怎么专业的测试,我们发现EXT4独树一帜,仅仅在操作小文件的时候输给了Reiserfs,其他都超过了其他两个文件系统。不过这个也不能说明EXT4就一定最好,因为我们还没有考虑碎片问题,经过一段时间的使用再来测试,可能才能更客观。
不过我们通过这个测试,发现我们的全新EXT4还是值得期待的。测试的时候,我使用的还只是mkfs.ext4dev 开发包。相信正式版的表现应该更上一层楼。

扩展阅读

对于磁盘性能的测试工具,又Postmark和Bonnie++,前者主要测试文件系统在邮件系统或者商务系统中的性能,针对需要频繁,大量地读取小文件。而Bonnie++主要测试大文件的。
由于Reiserfs的树形写入特点,结合测试结果,我们可以得到如下的结论:
  • 在小型系统,Reiserfs和ext3的性能是比较好的,但由于ext3的目录项是线型的,而Reiserfs的目录项是树型的,文件较多时,Reiserfs要更好一些。
  • 对于上G的大文件储蓄要求,各个文件系统差据很小,性能瓶颈在硬盘上。
  • 虽然XFS和JFS设计结构很好,但都是针对大中型系统的,在小型系统中发挥不明显。
  • 全日志模式和预定,回写这两种模式相比,差据是很大的。预定和回写两者差据不大。性能和安全的兼顾,文件系统的缺省安全模式,预定模式是比较好的选择。

No comments:

Post a Comment