BTRFS vs EXT3 vs EXT4 vs XFS

原创内容,转载请注明:  [http://www.ssdfans.com]  谢谢!

 

先来了解一下这四个Linux文件系统:

ext3:经典的Linux文件系统;

ext4:继承ext3成为Linux的默认文件系统;

xfs:高性能文件系统,扩展性很好;

btrfs:一个功能非常丰富的文件系统。

 

测试环境和工具

 

工具有,

bonnie++ (version 1.96):综合性测试读写速度以及元数据性能;

sysbench (version 0.4.12):半综合的测试工具,擅长数据库性能测试;

postgresql (version 9.1.3) , mysql (version 5.5.23):用来测试数据库性能;

tar/untar,cat:几个日常实用的代表性工具;

filefrag:检查文件系统碎片的有用工具。

 

测试环境是个Dell D620笔记本,CPU Core2 T7200 2.0GHz,Martrixer当年上大学时也买过这台笔记本,一直用了很多年,最后慢的不成样子了。

4 GB DDR2-667 RAM

Quadro NVS110 显卡

硬盘:Seagate ST980825AS 7200 RPM 80 GB SATA HDD ( IDE兼容)

操作系统:Fedora 17 amd64 内核版本3.4.0-1.fc17.x86_64

 

除了write barriers,文件系统都使用默认配置。

 

Bonnie++读写性能

 

顺序读写都差不多,ext3的CPU占用高了一点。

 

随机寻道在没用同步时性能差不多,但是在同步模式下,btrfs性能和CPU占用都变得很差。有些虚拟机图像和大的音视频文件经常使用direct IO,跳过OS的cache层,这种情况下就是上图的性能。

 

顺序读写都差不多,这里面IN指的写,OUT是读。

 

同步模式结果和前面是一样的。

 

Bonnie++文件操作性能

 

正常的创建删除文件操作,ext3和ext4好一点,因为XFS在创建和删除时有很多元数据需要操作。

 

同步模式下btrfs删除超快,创建超慢,可见创建文件的时候有很多操作。

 

非同步+direct模式,和之前类似。同步是说数据要写到磁盘才算写下去,而不是写到cache。Direct是说跳过cache,直接用磁盘。所以我感觉这两个是一个概念。

 

同步+direct模式,和前面类似。

 

MySQL性能

 

用Sysbench测MySQL,创建100K行条目,大家差不多时间。

 

响应100K个请求也差不多。

 

10K个读写混合的测试,btrfs差一点。

 

mysql-bench的测试也验证了这一点:btrfs不适用于MySQL。

 

Postgresql性能

 

Postgresql是另一个开源数据库。准确性和扩展性比较好。

创建100K个条目,btrfs又差了。

 

100K个请求,ext3弱了一点。

 

读写混合测试,ext4最好。

 

创建数据库,ext4最快。

 

交易性能ext4最好。

 

综上,ext4是最适合Postgresql的文件系统。

 

Linux内核untar和cat操作性能

 

解压缩btrfs最好,ext3最差。

 

文件的读,btrfs最快,ext3最慢。

 

可见xfs和btrfs在日常应用的读文件中,还是很高效的。

 

文件系统碎片

 

文件碎片是说一个大文件分别放在磁盘的不同位置,导致读的时候就要不断转动磁头寻址,机械硬盘寻址一次要5-15毫秒,非常费时间。

 

消除碎片的两种方法:

1. 有一个程序定期清楚碎片,Windows是这么做的,不过现在ext4,xfs,btrfs都有这个功能了;

2. 分配的时候减少碎片,Linux是这么做的。

 

测试结果显示,除了ext3的三个文件系统都几乎是1个文件1个数据块。Ext3差一点点。

 

总结

 

作者的结论跟测试没什么关系,可以看出ext4的性能很好,btrfs适合桌面用户,因为功能丰富,但数据库性能一般。

 

引用:

Written by Gionatan Danti on 18 June 2012. Posted in Linux & Unix http://www.ilsistemista.net/index.php/linux-a-unix/33-btrfs-vs-ext3-vs-ext4-vs-xfs-performance-on-fedora-17.html?limitstart=0

 

想要每天看一条SSD文章吗?扫一扫,微信关注我们!或者微信搜索公众号ssdfans关注。

 

11

分类目录 未分类.
扫一扫二维码或者微信搜索公众号ssdfans关注(添加朋友->点最下面的公众号->搜索ssdfans),可以经常看到SSD技术和产业的文章(SSD Fans只推送干货)。
ssdfans微信群介绍
技术讨论群 覆盖2000多位中国和世界华人圈SSD以及存储技术精英
固件、软件、测试群 固件、软件和测试技术讨论
异构计算群 讨论人工智能和GPU、FPGA、CPU异构计算
ASIC-FPGA群 芯片和FPGA硬件技术讨论群
闪存器件群 NAND、3D XPoint等固态存储介质技术讨论
企业级 企业级SSD、企业级存储
销售群 全国SSD供应商都在这里,砍砍价,会比某东便宜20%
工作求职群 存储行业换工作,发招聘,要关注各大公司招聘信息,赶快来
高管群 各大SSD相关存储公司高管和创始人、投资人

想加入这些群,请微信扫描下面二维码,或搜索nanoarchplus,加阿呆为微信好友,介绍你的昵称-单位-职务,注明群名,拉你进群。SSD业界需要什么帮助,也可以找阿呆聊。