从ext4和BTRFS看Linux文件系统的兴盛

发表于:2009-8-11 10:41

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

#
Linux

  最近几年文件系统的开发逐渐兴盛起来。Sun开源了ZFS,又收购了Lustre。昆腾、Panasas、IBM、惠普、NetApp和Red Hat都加强了文件系统的开发力度。不言而喻,所有这些开发工作激励了开源社区以推出针对Linux操作系统的更高性能文件系统。

  来看看在Linux方面的几个开发项目:BTR文件系统(也就是我们所知的Butter FS或者B-tree FS)和ext4。

  Illuminata分析师Gordon Haff表示:“ext4是现在广泛使用的ext3的升级,不仅增加了很多升级功能,而且性能也有所提高。就短期来说,我们认为ext4将是被广泛部署在Linux操作系统中的下一代文件系统。”

  虽然ext4是在2006年开发出来的,但是最近几年一直非常稳定,直到最近看到一些广泛的部署。例如,ext4出现在最近发布的Fedora产品中。这一Linux文件系统提高了存储容量(卷容量达到1 Exabyte),还有性能方面的增强。

  ext4实际上是对目前很流行的ext3文件系统的改进版本。ext3局限于16TB的存储容量,而ext4设计可以处理更大容量的文件系统。ext4新增的一项数据完整性功能支持对内部日志处理的校验和,进一步减少了存储错误的发生。

  但是ext4的开发并不如BTRFS那样重要,至少就发展潜力来说。BTRFS最终可能会给ZFS等带来更多威胁,但是目前还没有最后成型。它具有在线碎片整理功能(只有固态盘有这项功能)、Copy-On-Write技术、数据压缩、镜像、数据条带和快照等等。

  Haff表示:“BTRFS是下一代文件系统,这意味着它采用了传统文件系统的不同管理模式。”

  他的意思是,BTRFS已经打破了目前文件系统的管理和可用性模式。他举了一个例子:它实际上是将卷管理——以前这是一款单独的产品——整合到文件系统本身中去。它还内嵌了可靠性和可用性功能。

  另外,BTRFS在数据存储方面比ext更完善。它包括一些逻辑卷管理和RAID硬件功能,可以对内部元数据和用户数据进行检验和,同时内嵌了快照功能。ext4也可以实现以上一些功能,但是需要与文件系统和逻辑卷管理器进行通信。

  有趣的是,BTRFS最初是由Oracle开发的,但是现在却是由GPL发行许可的,被开源社区广泛采用,可被任何人使用。”

  BTRFS为企业应用做好准备了吗?

  那么这将是Linux领域可以采用、让ZFS获得盈利的企业级文件系统吗?有些人说BTRFS有比ZFS更多的功能特性和更高的性能。然而,这更多是人们推测的,随着ZFS在很多企业内成功应用,BTRFS却还没有为企业应用做好充分准备。

  Haff表示:“当然BTRFS和ZFS有很多理念上的相同点,但是BTRFS仍然还处于研发过程中。也许到未来几年,它才能为企业生产部署做好准备。”

  那么BTRFS如何做到这一点?早期的基准测试结果显示,虽然现在BTRFS在Linux系统上读写性能已经接近ext4,但是在性能方面还有很多要完善的地方。希望BTRFS可以在快照和检验和功能方面挑战ZFS。ZFS的Copy-On-Write快照技术是在每次数据发生变更的时候保留快照,新数据还被检验和以确保正确性,防止发生数据损毁。所有这些功能特性都被添加到BTRFS中,并一起被集成到Linux内核。

  但是Sun并不畏惧。任何一种新兴技术从开发阶段到主流应用都需要几年的时间。Haff表示:“BTRFS的生产部署可能要等到2011年或者2012年,考虑到目前文件系统开发的进程比较慢,所以这些时间框架还是比较乐观的。”

  Red Hat

  有一家Linux厂商已经开始将这些新的文件系统集成到他们的产品中,它就是Red Hat。Fedora是Red Hat赞助开发的开源Linux发行版本,可供用户免费下载,是Red Hat Enterprise Linux(RHEL)的技术基础。上个月刚刚发布的Fedora 11支持ext4和BTRFS。

  Red Hat文件系统内核经理Rid Wheeler表示:“ext4是Fedora 11默认的文件系统,所有新用户自动被默认为ext4用户,除非他们另外选择非默认的文件系统。BTRFS也被嵌入到Fedora 11中,但是需要在启动时进行选择来激活,因为它目前还是一款实验性的文件系统,并不适用于用户的关键数据。”

  Red Hat似乎很乐于走这种实验性路线,但不愿意对任何一种文件系统作出评价。虽然Fedora 11是基于ext4的,但是Red Hat Enterprise Linux默认使用的是ext3。而且,Fedora还支持XFS等其他文件系统。前段时间RHEL技术预览的就是ext4,目前还不支持BTRFS。

  Wheeler表示:“RHEL采取了一种更谨慎的策略。与希望获得最新版本和最尖端性能的Fedora用户不同,我们的RHEL用户需要的是更加成熟的技术。”

  他还指出,这两种新的Linux文件系统都不会与Red Hat的Global File System形成直接竞争。GFS是高可用性集群的组成部分,这样多台服务器可以同时读取和写入到同一个文件系统,通常是直接通过光纤通道这样的共享存储架构实现的。不管是BTRFS、ext4还是ZFS都支持集群操作。因此RHEL针对非集群工作负载使用ext3,针对集群用户使用GFS,在不同实例中则使用ZFS。

  Wheeler表示:“文件系统的选择是根据实际情况来决定的。随着ext4和BTRFS的成熟,我们将了解他们中的哪一个最适合于特定的企业工作负载。一个文件系统的任何用户都可以根据他们的特殊工作负载测试和调节这个文件系统,并参与到开发流程中来。”

  也就是说,他非常看好BTRFS,相信BTRFS未来将为一些尖端用户的采用作好准备。

  Wheeler表示:“最令人激动的就是那些可以允许文件系统根绝不同类型存储设备——例如固态盘或者大型RAID阵列——进行动态自主调节的新功能。”

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号