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工具来计时):

任务文件系统 EXT3 EXT4 Reiserfs
建立空文件 0m13.109 0m12.977 0m13.046
建立小文件 1m55.583 1m15.253 1m0.192
建立大文件 0m43.58 0m37.942 0m40.288
复制大文件 1m30.537 1m22.898 1m28.705
删除大文件 0m2.218 0m0.246 0m0.371
删除小文件 0m54.497 0m0.902 0m0.979

根据这个不怎么专业的测试,我们发现EXT4独树一帜,仅仅在操作小文件的时候输给了Reiserfs,其他都超过了其他两个文件系统。不过这个也不能说明EXT4就一定最好,因为我们还没有考虑碎片问题,经过一段时间的使用再来测试,可能才能更客观。

不过我们通过这个测试,发现我们的全新EXT4还是值得期待的。测试的时候,我使用的还只是mkfs.ext4dev 开发包。相信正式版的表现应该更上一层楼。

扩展阅读

对于磁盘性能的测试工具,又Postmark和Bonnie++,前者主要测试文件系统在邮件系统或者商务系统中的性能,针对需要频繁,大量地读取小文件。而Bonnie++主要测试大文件的。

由于Reiserfs的树形写入特点,结合测试结果,我们可以得到如下的结论:

  • 在小型系统,Reiserfs和ext3的性能是比较好的,但由于ext3的目录项是线型的,而Reiserfs的目录项是树型的,文件较多时,Reiserfs要更好一些。
  • 对于上G的大文件储蓄要求,各个文件系统差据很小,性能瓶颈在硬盘上。
  • 虽然XFS和JFS设计结构很好,但都是针对大中型系统的,在小型系统中发挥不明显。
  • 全日志模式和预定,回写这两种模式相比,差据是很大的。预定和回写两者差据不大。性能和安全的兼顾,文件系统的缺省安全模式,预定模式是比较好的选择。

ReiserFS介绍:http://en.wikipedia.org/wiki/ReiserFS

Ext3介绍:http://en.wikipedia.org/wiki/Ext3

Ext4介绍:http://en.wikipedia.org/wiki/Ext4

ext3, ext4 和 reiserfs 文件系统性能对比的更多相关文章

  1. 关于ext3,ext4,xfs和btrfs文件系统性能对比

    关于ext3,ext4,xfs和btrfs文件系统性能对比 应为原文:http://www.ilsistemista.net/index.php/linux-a-unix/6-linux-filesy ...

  2. ext3,ext4,xfs和btrfs文件系统性能对比

    应为原文:http://www.ilsistemista.net/index.php/linux-a-unix/6-linux-filesystems-benchmarked-ext3-vs-ext4 ...

  3. dumpe2fs 命令的使用,转储 ext2/ext3/ext4 文件系统信息

    使用man 命令可以查看 dumpe2fs 命令具体的使用的方法: NAME dumpe2fs - dump ext2/ext3/ext4 filesystem information SYNOPSI ...

  4. Linux文件系统性能优化 (转)

    http://blog.chinaunix.net/uid-7530389-id-2050116.html 由于各种的I/O负载情形各异,Linux系统中文件系统的缺省配置一般来说都比较中庸,强调普遍 ...

  5. 漫谈Linux标准的文件系统(Ext2/Ext3/Ext4)

    Ext 全称Linux extended file system, extfs,即Linux扩展文件系统,Ext2就代表第二代文件扩展系统,Ext3/Ext4以此类推,它们都是Ext2的升级版,只不过 ...

  6. linux分区之ext2,ext3,ext4,gpt

    linux分区之ext2,ext3,ext4,gpt 2013-07-10 12:00:24 标签:ext3 gpt 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明 ...

  7. Linux下误删除后的恢复操作(ext3/ext4)

    Linux是作为一个多用户.多任务的操作系统,文件一旦被删除是难以恢复的.尽管删除命令只是在文件节点中作删除标记,并不真正清除文件内容,但是其他用户和一些有写盘动作的进程会很快覆盖这些数据.在日常工程 ...

  8. Linux文件系统性能优化

    本文绝大部分是转载自CSDN刘爱贵专栏: http://blog.csdn.net/liuben/archive/2010/04/13/5482167.aspx另外根据参考文档增补了一部分内容. 由于 ...

  9. [C/C++][文件操作] 对比目录并列出同名较新文件、较旧文件 0.1

    主要是模仿robocopy的部分功能 (robocopy /L 参数可以列出本地目录和备份目录中的异同之处,主要是标记出:较新的.较旧的.多出的文件 ) 现在还不会写GUI,打算后面自己做目录树dif ...

随机推荐

  1. osg for android学习之一:windows下编译(亲测通过)【转】

    1. 首先需要一个OSG for android的环境 (1)NDK 现在Eclipse 对NDK已经相当友好了,已经不需要另外cygwin的参与,具体可以参考 Android NDK开发篇(一):新 ...

  2. C语言头文件的使用(转载)

    C语言头文件的使用 ——by janders 转载请注名作者和出处,谢谢! C语言中的.h文件和我认识由来已久,其使用方法虽不十分复杂,但我却是经过了几个月的“不懂”时期,几年的“一知半解”时期才逐渐 ...

  3. Nginx如何启用ETag,提高访问速度

    ETag全称EntityTags,HTTP协议规格说明中定义“ETag”为“被请求变量的实体值”. 我们也可以把ETag理解为是一个客户端与服务器关联的记号.这个记号告诉客户端,当前网页在上次请求之后 ...

  4. position:fixed ,锚点定位不准确的问题

    解决方案: 参照 stackoverflow 的做法,在主体内容前加一个暗锚 <div class="anmao" id="experts">< ...

  5. 【Spark】Spark-foreachRDD需要注意的问题

    Spark-foreachRDD需要注意的问题 dstream.foreachRDD_百度搜索 通过Spark Streaming的foreachRDD把处理后的数据写入外部存储系统中 - 吾心光明 ...

  6. .NET MVC-去掉验证

    将@Html.ValidationMessage("sortid")代码去掉 将if (ModelState.IsValid)验证代码去掉

  7. pdf阅读器改背景色

  8. 史上最全面的Buffalo WHR-G300N CH v2 刷OpenWrt教程

    Buffalo WHR-G300N CH v2 刷OpenWrt.有两种办法.一种是Windows下刷.一种是在linux下使用tftp刷.Buffalo WHR-G300N-CH v2的openwr ...

  9. 如何在onCreate方法中获取视图的宽度和高度

    你可以通过视图的getWidth()和getHeight()来获取视图的宽度和高度. 但是,可能会让你失望的是,如果你直接在onCreate方法内调用这两个函数,你会的到0. 为什么呢? 这是因为,当 ...

  10. VMware Lab setup - A virtualized lab for testing HA and DRS

    https://www.simple-talk.com/sysadmin/virtualization/vmware-lab-setup---a-virtualized-lab-for-testing ...