写入发生在多个目录

时间:2015-08-28 07:13:24

标签: c filesystems storage

我有XFS文件系统的存储空间。

场景1

  • 在一个目录中连续写入多个文件 例如:所有文件都写在/mnt/storage/test/目录

场景2

  • 在多个目录中连续写入多个文件

迭代1

  • 文件保存在/mnt/storage/test/repeat1/目录

迭代2

  • 文件保存在/mnt/storage/test/repeat2/目录

使用场景1 ,观察到的磁盘写入性能是不变的。 使用场景2 ,磁盘写入性能被视为锯齿模式。随着目录数量的增加,写入性能下降。

知道为什么XFS性能因多个目录中的文件写入而异吗?

1 个答案:

答案 0 :(得分:0)

警告:这不是一个完美的答案:

XFS以块的形式分配目录。对同一目录的所有写入都转到同一个块(通常磁盘头已经在正确的柱面上。)

实际写入以突发方式执行。

新的/不同的目录位于不同的块中。

在进行交替目录写入时,必须在每次目录更改时将磁头移动到相应的块。为了最小化磁头移动,会收集多个写入一个目录并以突发方式写入。