在你的企业和个人部署中,我们假设你已经到了处于应该采用哪种文件系统之路的十字路口,有大量的文件系统,为你想要完成的特定应用程序选择一个,有时很难,比如Ext4和XFS,选择哪一个?如果你有这样的需求,请接着往下阅读。在考虑是否采用文件系统选择时,你应该考虑文件系统需要多大,应该具有哪些独特功能,以及它在你的工作负载下的性能,考虑到这一点,本文将重点放在ext4和xfs文件系统上,以下为你列举它们的主要功能,让你有一个参考。
XFS文件系统 XFS文件系统是由SGI(Silicon Graphics, Inc.)在20世纪90年代初开发的,并且在超大型服务器和存储阵列上运行,它的历史悠久,此文件系统以其强大且成熟的64位日记文件系统而著称,该系统支持单个节点或主机上的非常大的文件和文件系统,日记的概念确保在系统崩溃的情况下存在文件系统完整性,日记记录通过保留文件系统操作的记录来执行此操作,该记录可在重新启动系统并重新装入文件系统时重播,XFS在需要高性能和可伸缩性的环境中运行,因此通常被测量为具有企业工作负载的大型系统上性能最高的文件系统之一。 XFS文件系统的功能: 如上所述,它支持元数据日记功能,这有助于更快地进行崩溃恢复。 紧密集成的备份和还原实用程序。 联机碎片整理和增长:此文件系统可以在安装和激活时进行碎片整理和放大。 全面的诊断功能。 可扩展且快速的维修工具,XFS可扩展至超过500TB的exabytes。 流式视频工作负载的优化。 B树索引,用于自由空间管理的可扩展性。 能够支持大量并发操作。 广泛的运行时元数据一致性检查。 复杂的元数据预读算法。 延迟,基于范围的分配。 动态分配的inode。 扩展属性(xattr):这允许系统为每个文件关联几个附加的名称/值对,它默认启用。 与Ext4相比,XFS对单线程,元数据密集型工作负载的性能相对较差,这包括在单个线程中创建或删除大量小文件的工作负载。 配额日记:这可以避免在崩溃后进行冗长的配额一致性检查。
Ext4文件系统 源自Minix操作系统的Ext系列是在其生命周期中经历了演变的文件系统之一(参考:世界上最流行的操作系统不是Linux也不是Windows,而是MINIX),最初的EXT文件系统(Extended)于1992年在Linux上发布,以克服Minix文件系统的一些大小限制,Ext4是Ext文件系统的第四代产品,它可以读写Ext2或Ext3文件系统,但Ext4文件系统格式与Ext2和Ext3驱动程序不兼容,除此之外,Ext4还添加了几个新的和改进的功能,这些功能在大多数现代文件系统中都很常见,参考了解ext4及和其他Linux文件系统的区别。 Ext4文件系统的功能: 基于范围的元数据:一种更紧凑,更有效的方式来跟踪文件系统中的已用空间,包括延迟分配。 延迟分配:这允许文件系统推迟为新写入的用户数据选择永久位置,直到数据刷新到磁盘,因此,实现了更高的性能,因为它可以允许更大,更连续的分配,从而允许文件系统以更好的信息做出决策。 期刊校验和。 大型存储支持。 多块分配。 条带感知分配。 持续的预分配。 Ext4中的文件系统修复时间(fsck)比Ext2和Ext3快得多,这是可能的,因为ext4相应地标记了未分配的块组和inode表部分,这允许在文件系统检查期间跳过它们。 配额日记 - 这可以避免在崩溃后进行冗长的配额一致性检查。 扩展属性(xattr) - 这允许系统为每个文件关联几个附加的名称和值对。 与XFS相比,Ext4处理的文件较小,例如,RHEL 7中Ext4的最大支持大小为16TB,而XFS中为500TB。
结语 选择满足你特定应用需求的文件系统需要参考和研究各种参数,本文概述了Ext4和XFS文件系统选项的优点,并帮助你为应用程序环境做出正确的决策。
相关主题 |