快速业务通道

Linux日志文件系统剖析

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-07
到日志中.这种模式可以最大限度地防止文件系统崩溃与数据丢失,但全部数据都写入了两次(先写入日志,再写入磁盘),系统性能可能会降低.

日志的提交也有很多种不同的策略.比如,是在日志将满时,还是在超时后?

日志文件系统的现状

如今,有几种日志文件系统应用非常广泛.每一种都有其自己的优缺点.下面介绍现存最普遍的四种日志文件系统.

Empire CMS,phome.net

JFS2

JFS2(又称 enhanced journaled file system)是最早期的日志文件系统,在植入 Linux 之前已被应用于 IBM AIX? 操作系统多年.它是 64 位的文件系统,虽然它是在原来的 JFS 的基础上开发的,但却较之有所改进,即:JFS2 具有更优的扩展性能,支持多处理器架构.

JFS2 支持预定的日志记录方式,可以提高较高的性能,并实现亚秒级文件系统恢复.JFS2 同时为提高性能提供了基于分区的文件分配(Extent-based allocation).基于分区的分配 是指对一组连续的块而非单一的块进行分配.这些块在磁盘上是连续的,其读取和写入的性能就会更好.这种分配的另外一个优势就是可以将元数据管理最小化.按块分配磁盘空间就意味着要逐块更新元数据.而使用分区,元数据则仅需按照分区(可以代表多个块)更新.

JFS2 还使用了 B 树,以便更快地查找目录和管理分区描述符.JFS2 没有内部日志提交策略,而是在 kupdate 守护进程超时时提交.

XFS

XFS 是 Silicon Graphicsis 于 1995 年为 IRIX 操作系统开发的其他早期日志文件系统之一.它于 2001 年就已经被植入 Linux,因此,它已经成熟可靠.

XFS 支持 64 位全地址寻址,并以 B 树为目录和文件分配提供高性能.XFS 同样使用了基于分区的分配,支持可变的块大小(从 512 字节到 64KB ).除分区外,XFS 还采用延时分配,即等到块将被写入磁盘时,再为其分配磁盘空间.这样所需磁盘空间总数就一目了然,因此这个功能提高了分配连续磁盘块的可能性.

XFS 还有一些其他的有趣特性,它可以保证 rate 输入输出(I/O — 通过为文件系统用户保留带宽)和直接 I/O.其中,数据是直接在磁盘和用户空间缓冲区间拷贝的(而不是从多个缓冲区进入).XFS 采用回写日志策略.

第三扩展文件系统(ext3fs)

第三扩展文件系统(third extended file system,ext3fs)是最流行的日志文件系统,是由 ext2 文件系统演化而来.实际上,Ext3fs 可以与 ext2fs 兼容,这是 ext3fs 使用的结构与 ext2fs 相同,仅仅多了一个日志而已.我们甚至可以把 ext3fs 的一部分当作 ext2 文件系统挂载,或者将 ext2 文件系统转换成 ext3 文件系统(使用 tune2fs 实用程序).

Empire CMS,phome.net

Ext3fs 允许用三种方式记录日志(回写,预定和数据),但预定模式为默认模式.日志提交策略也是可配置的,但是默认在日志填满 1/4 时或其中一个提交计时器超时时,提交日志.

ext3fs 主要的弊端之一就是它最初不是作为日志文件系统而设计的.它是在 ext2fs 的基础上开发的,因此缺少一些其他日志文件系统所具备的高级特性(例如分区).它在性能方面较之 ReiserFS、JFS 以及 XFS 也尤为逊色,但它所需要的 CPU 和内存要比同类解决方案少.

ReiserFS

什么是 tail packing?

很多情况下,一些文件的大小小于逻辑块.为了不把可以分配给一个逻辑块的磁盘空间浪费给小文件(称之为tail),于是把多个文件打包到一个单一的逻辑块中.结果发现这种方法可以让磁盘空间的容量比其他竞争文件系统(有性能损失)高 5%.


ReiserFS 是从一开始就按照记录日志的意图而开发的日志文件系统.ReiserFS 于 2001 年被引进到主流 2.4 内核(Linux 采用的第一个日志文件系统).其默认的日志记录方法为预定,且支持以在线调整大小的方式扩展文件系统.Reis

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号