什么是日记文件系统?

什么是日记文件系统

甚至维基百科也没有提供太多的信息。 除NTFS外,其他文件系统(在Windows / Linux上)支持日志,以及如何提高性能?

日志文件系统在文件系统实际执行之前会logging文件系统的变化。 通过这种方式,可以在发生故障(例如电源故障)后以最小的数据损失恢复。

维基百科文件系统比较的特性部分给出了哪些是日志logging。

日记不会提高性能。 实际上,日志操作会稍微降低速度,以换取上述可靠性。

实质上,日志文件系统所做的是在硬盘驱动器和操作系统之间添加一个额外的抽象级别。 它不是直接在磁盘上执行操作,而是跟踪它首先要做什么,然后是否成功。

例如,如果您想将文件从一个驱动器移到另一个驱动器,该过程将如下所示:

  • 将旧文件物理复制到新位置
  • 更新新驱动器上的目录条目
  • 从旧驱动器中删除目录条目
  • 旧驱动器上的可用空间

确切的过程是依赖于文件系统,但你明白了。 这通常会正常工作,但在系统崩溃的可能性不大的情况下,事情可能会中途中断。 您可能最终将文件物理复制,但没有指向它的目录条目。 您最终可能会删除旧驱动器上的目录引用,但空间未被释放。 在某些情况下,最终可能会损坏文件系统,因为目录项只能被部分写入,所以甚至无法工作。

换句话说,很多可能会出错。

日记文件系统将使用相同的基本过程,并附加一些步骤。 就像是:

  • 日记条目:将文件从A移动到B.
    • 将旧文件物理复制到新位置
    • 更新新驱动器上的目录条目
    • 从旧驱动器中删除目录条目
    • 旧驱动器上的可用空间
  • 日记条目:完成将文件从A移动到B

如果由于某种原因(如系统崩溃)导致进程中断,则文件系统现在知道正在进行的操作以及是否已完成。 然后,可以通过尝试从头开始完成事务,或者将文件系统恢复到之前的状态,从而快速而优雅地进行恢复。 所有这一切都不需要对文件系统进行逐块检查来发现错误,鉴于现代硬盘的大小,这可能是非常耗时的。

这可以显着提高文件系统的健壮性,并在出现故障的情况下加快恢复时间。 不同级别的可靠性可以通过更改日记条目的粒度获得 – 这又取决于文件系统。

由于日志不可避免地会涉及更多的步骤,除非您感觉崩溃了很多,否则不会有任何性能提升。 但是,与优点相比,性能差异往往可以忽略不计。

日记文件系统上的维基百科文章包含更多关于它是什么,它是如何工作的,以及为什么。

日志文件系统是一个被广泛滥用的文件系统,毕竟不是日志logging。

在文件系统中,“日志logging”意味着文件系统能够从崩溃和功率损失恢复到一致状态。 这并不意味着性能的提升,这并不意味着文件系统在崩溃之前的某个时间恢复到完整的快照,它甚至不意味着没有“文件系统检查”风格的操作来恢复崩溃。