[转帖]ReiserFS与ext3的比较

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
kokosu
帖子: 117
注册时间: 2007-07-10 9:33

[转帖]ReiserFS与ext3的比较

#1

帖子 kokosu » 2008-02-28 16:06

最近,我刚从ReiserFS文件系统转到了ext3日志文件系统。我是一个ReiserFS的忠实追随者,并且直到现在我也没有改变我对该文件系统的看法。我之所以转而使用ext3,初衷是想花一些时间看看ext3中有什么我喜欢的东西。 ext3是由自由社团开发的日志式文件系统,它被设计成ext2的升级版本,尽可能地方便用户从ext2向ext3迁移。ext3在ext2的基础上加入了记录元数据的日志功能,努力保持向前和向后的兼容性,所以把这个文件系统称为ext2的新版本更恰当一些。 ReiserFS是Hans Reiser领导下的开发小组开发和发展的,SuSE Linux也对它的发展起了很大的作用。现在,它已经发展成一个高效、可靠的文件系统。

ReiserFS与ext3主要不同

  就技术而言,两个文件系统有很多的不同,但是对于多数人来说,只需关心其中的几点即可。第一是你可以很方便地从ext2格式进行升级,因为到目前为止,很多Linux发行套件仍然在使用这种文件系统。第二就是ext3不仅可以记录数据日志(这在ext2中就已经具备),而且在此基础上还可以记录元数据 (Metadata)日志。现在的ReiserFS则只有日志元数据。第三就是文件系统的可扩展性。在介绍第三点以前,让我们先来看一看前两个不同点,因为第三点值得我们特别关注。就ext3来说,它可以方便地从ext2文件系统进行升级转换是其一大优势。当然,对于一直使用ReiserFS的人来说,这没有什么意义。但是,大多数用户并不愿意尝试使用ext3以外的任何一种日志文件系统。原因很简单,把ext2转换到ext3要比转换成其它任何一种文件系统更简单、快捷。
  和ext2相比,ext3提供了更佳的安全性,这就是数据日志和元数据日志之间的不同。在两台不同的电脑上,其中一台使用数据日志,另外一台使用数据和元数据日志。启动一些应用程序,并对一些数据文件进行适当的改动,然后拨掉电源。当启动第一台机器时,它可以很快地把文件系统恢复到稳定的状态。但是可以肯定,刚才你对数据文件所做的改动,已经由于掉电而丢失。第二台机器也可以很快地将文件系统恢复到稳定的状态,并且可以保留掉电前你对数据所做的所有改动。
  很显然,对于大多数计算机用户来说,一般都愿意使用后者。不过,除非真的有此需求,否则应该慎重考虑。在数据日志上增加了元数据日志后,会使系统速度受到严重的影响。在大多数情况下,ReiserFS已经比没有日志功能的ext2快了很多。并且,在一般情况下,ReiserFS要比具有元数据日志功能的ext3快得多。如果你同时选择了数据和元数据日志功能,那么ReiserFS要比ext3快得多。


速度不是选择文件系统的关键


  上面说到ReiserFS的速度要快得多,不过在现实中,人们关心的往往并不是速度(我指的是感觉不是特别明显的速度上的差异)。作为一个用户,很难想象他会在意打开一个Word文件,或者Excel表单需要2.5秒还是4秒的时间。事实上,大部分人选择使用微软的Office,并不是基于速度方面的考虑,而是因为大家都在使用该办公套件。
  这种现象并不仅仅发生在Windows领域。KWord或者AbiWord的加载速度要比StarOffice快得多,但是,很多Linux用户一边等着 StarOffice缓慢地启动,一边还在对其大加赞赏。一般情况下,他们并不会因为StarOffice的速度上有欠缺而放弃它,因为,他们已经习惯了。
  可见,虽然速度较慢,但是只要其还在人们可以容忍的限度之内,一般人是不会介意的。我们一般喜欢把速度慢的原因归咎于硬件,而不是软件。比如说,众多骨灰级的游戏玩家一般会购买最新的芯片和显卡,来运行自己钟爱的游戏,而不会根据自己现有的硬件配置来购买可以运行的游戏。

  在此,我必须澄清,我并不认为因为可以使用更快的处理器,以及更大的内存,所以Linux就可以采用那些很慢的、臃肿的程序代码(当然Linus Torvalds也不会答应这么做)。我只是觉得在做某些事情时,完全可以采取或者选择一种合适的方式来完成。如果有人要享受ext3提供的数据日志的安全功能,并且又不想因此而在速度上有所损失的话,完全可以买一个更快的处理器来弥补该文件系统性能上的不足。

  当然,ReiserFS文件系统也有类似的问题。所以,如果你要想使用ReiserFS,而又担心自己的数据丢失,那么你可以关闭驱动器的写缓冲功能。根据所使用的系统不同,关闭该功能的命令可能也会有所不同,但可能都和以下所示的命令类似:

/sbin/hdparm -wo /dev/had


  以上命令是要关闭系统中的第一个IDE驱动器的写缓冲功能。需要引起注意的是,这样做将会使系统性能受到很大影响。当然,既然你可以忍受ext3元数据日志功能带来的系统速度下降,这样做又有何不可呢?在我的机器上,由于害怕丢失一些重要数据,我就关闭了其中一个驱动器的写缓冲功能,性能下降得很厉害,但我认为这种代价还是值得的。
  说了那么多,我只是想说明一件事,也就是说对于大多数使用电脑的人而言,选择ReiserFS还是ext3,速度并不是决定性的因素。只有少数的用户和一些对速度要求非常苛刻的特殊环境,才会关心二者的速度差异。此外,ext3有一个独特的功能,它可以在每一个载入点让用户控制数据日志功能。换句话说,你可以从一个驱动器上载入多个分区,并且每一个分区都可以决定是否使用数据日志功能。当然,如果把整个驱动器的写缓冲功能都关闭了,那么也就没有这个选项了。
  在现实中,大多数人既不会考虑性能的因素,也不会考虑安全的因素,而总是希望采用一种最方便和最熟悉的途径。在各种途径的选择中,一个取决定性的因素就是用户目前正在使用什么系统。不过,在以后我们选择使用的Linux套件中,不管你是重新安装,还是进行升级,各Linux发行公司都会把文件系统的选择过程变得非常简单。


文件系统的可扩展性


  现在让我们来看一看关键的第三个因素:可扩展性。如果你访问一下ReiserFS的站点(http://www.ReiserFS.org/) 就会发现,ReiserFS对空间利用率和速度非常在意,因此,它在磁盘利用率和性能方面都非常出色。当我把文件系统从ReiserFS转换到ext3 时,发现我的可用空间变少了。不过这没有关系,因为现在的磁盘空间和内存的价格都非常便宜。此外,ReiserFS还在平衡树方面下了很大的功夫。 ReiserFS是基于平衡树的文件系统结构,这使得其在处理大量文件的巨型文件系统,如服务器上的文件系统时性能要好得多。
  ReiserFS突出的地方还在于其设计上着眼于实现一些未来的插件程序,这些插件程序可以提供访问控制列表、超级链接,以及一些其它非常不错的功能。在这一点上,ReiserFS的开发者要比ext3做得好,因为他们已经事先考虑到了所要实现的功能。这样在真正要增加这些功能时,其稳定性肯定要比 ext3好。据资料显示,在设计ext2时,并没有人计划要为其设计日志功能。日志功能是后来匆忙补充上去的。当然,这并不能说是什么坏事,但至少在你使用时,总会有一种不安全的感觉。所以,如果着眼于将来扩展性方面的考虑,选择ReiserFS应该说是一明智之举。


  总的看来,这两个文件系统都比较优秀,并且谁也没有绝对的优势可以压倒对方。如果你现在使用的是ext2文件系统,并且对数据安全性要求很高,那么可以考虑使用ext3。如果你更在意文件系统的速度及可扩展性,或者想尝试使用ext2以外的文件系统,那么ReiserFS应该是首选。
头像
bones7456
帖子: 8495
注册时间: 2006-04-12 20:05
来自: 杭州
联系:

#2

帖子 bones7456 » 2008-02-28 17:06

作为一个用户,很难想象他会在意打开一个Word文件,或者Excel表单需要2.5秒还是4秒的时间
这个当然要在意...
关注我的blog: ε==3
头像
tonytam
帖子: 485
注册时间: 2006-09-23 12:28

#3

帖子 tonytam » 2008-02-28 17:24

ReiserFS曾经给我带了灾难,当然那时还是双系统并在win下运行了一次PQ,估计PQ才是元凶。
头像
hethe
帖子: 3666
注册时间: 2005-08-01 9:14

#4

帖子 hethe » 2008-02-28 17:40

OVERALL CONCLUSION

These results replicate previous observations from Piszcz (2006) about reduced disk capacity of Ext3, longer mount time of ReiserFS and longer FS creation of Ext3. Moreover, like this report, both reviews have observed that JFS is the lowest CPU-usage FS. Finally, this report appeared to be the first to show the high page faults activity of ReiserFS on most usual file operations.

While recognizing the relative merits of each filesystem, only one filesystem can be install for each partition/disk. Based on all testing done for this benchmark essay, XFS appears to be the most appropriate filesystem to install on a file server for home or small-business needs :

* It uses the maximum capacity of your server hard disk(s)
* It is the quickest FS to create, mount and unmount
* It is the quickest FS for operations on large files (>500MB)
* This FS gets a good second place for operations on a large number of small to moderate-size files and directories
* It constitutes a good CPU vs time compromise for large directory listing or file search
* It is not the least CPU demanding FS but its use of system ressources is quite acceptable for older generation hardware

While Piszcz (2006) did not explicitly recommand XFS, he concludes that "Personally, I still choose XFS for filesystem performance and scalability". I can only support this conclusion.
Gedanken ohne Inhalt sind leer .Anschauungen ohne Begriffe sind blind.
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

#5

帖子 zhuqin_83 » 2008-02-29 7:52

ext3不用,又老,占用空间又多,速度最慢,等ext4看看如何,应该在25内核之后引入,reiser4等作者出狱后再看,另外还有其他的一些可能选择如hammer filesystem(dragonBSD)。目前用jfs,xfs不支持grub,小文件性能较差,jfs是最为平均的。
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
头像
jarryson
帖子: 4002
注册时间: 2005-08-14 19:53

#6

帖子 jarryson » 2008-02-29 9:24

grub是支持xfs的。我都用几年了也。。看是不是ubuntu上这样?因为以前的ubuntu比较老?

也是比较期待hammer filesystem
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#7

帖子 eexpress » 2008-02-29 9:39

要速度。日志文件系统分区,都别用。
● 鸣学
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

#8

帖子 zhuqin_83 » 2008-02-29 12:37

ee是只用ext2的
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

#9

帖子 BigSnake.NET » 2008-02-29 12:38

r4 的缺点是sync要很久很久很久很久...
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
头像
hethe
帖子: 3666
注册时间: 2005-08-01 9:14

#10

帖子 hethe » 2008-03-02 0:30

zhuqin_83 写了:ext3不用,又老,占用空间又多,速度最慢,等ext4看看如何,应该在25内核之后引入,reiser4等作者出狱后再看,另外还有其他的一些可能选择如hammer filesystem(dragonBSD)。目前用jfs,xfs不支持grub,小文件性能较差,jfs是最为平均的。
/boot 或/ 挂ext3就行了,
关键是用户自己的数据能有多少经常并发大量读写移动的小文件的,
现在都是单个就数G的电影文件,单个就数M的音乐,
xfs的小文件也不差,而且大文件支持尤为出色,还稳定无比,这才是桌面机首选的文件系统。
Gedanken ohne Inhalt sind leer .Anschauungen ohne Begriffe sind blind.
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

#11

帖子 zhuqin_83 » 2008-03-02 1:20

/boot直接挂ext2,要日志干嘛?
xfs看到现在的评价反正性能很不平均,个人系统肯定是小文件居多,大的扳手指头都能数过来,xfs本来就是为服务器开发,用到桌面是本末倒置了。而且他的性能是建立在内存大的基础上的,有缺点也有优点。corrupt的几率不算低,人家运行jfs多少年都没碰到一次,xfs就多了去了,reiserfs也是。
至于性能是否出色,和场合有关,反正我看的测试中xfs的表现不一,有最快也有最慢的,完全看你怎么应用。另外xfs的cpu占用不低。

所以目前只支持jfs,并观望fs发展。
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
strup
帖子: 652
注册时间: 2006-09-16 14:19

#12

帖子 strup » 2008-03-02 6:55

根据我个人经验,XFS是最慢的,EXT3比reiserfs慢,但不明显
头像
JangMunho
帖子: 1347
注册时间: 2006-01-18 12:55
来自: 也许真的没有人理解

#13

帖子 JangMunho » 2008-03-02 11:05

zhuqin_83 写了:ext3不用,又老,占用空间又多,速度最慢,等ext4看看如何,应该在25内核之后引入,reiser4等作者出狱后再看,另外还有其他的一些可能选择如hammer filesystem(dragonBSD)。目前用jfs,xfs不支持grub,小文件性能较差,jfs是最为平均的。
他把老婆杀死了,等他出狱得什么时候……
MacBook Pro 15" User
Cocoa Programmer
Loaden
帖子: 223
注册时间: 2008-02-20 6:36

#14

帖子 Loaden » 2008-03-02 11:40

我喜欢使用JFS,CPU占用低!速度也不错,也很稳定。
头像
Tenyears
帖子: 2245
注册时间: 2005-06-30 15:46
来自: 成都

#15

帖子 Tenyears » 2008-03-02 11:44

JangMunho 写了:
zhuqin_83 写了:ext3不用,又老,占用空间又多,速度最慢,等ext4看看如何,应该在25内核之后引入,reiser4等作者出狱后再看,另外还有其他的一些可能选择如hammer filesystem(dragonBSD)。目前用jfs,xfs不支持grub,小文件性能较差,jfs是最为平均的。
他把老婆杀死了,等他出狱得什么时候……
冤案,已经很清楚了
Humanity to others // 己所不欲,勿施与人
Laptop: ThinkPad X220 --- Win7 Home / Ubuntu 12.04
Desktop: Win7/Ubuntu 12.04
Server: Ubuntu12.04
回复