📜  稀疏文件

📅  最后修改于: 2021-09-10 01:55:11             🧑  作者: Mango

稀疏文件是一种计算机文件,可以为大数据进行有效的存储分配。当文件的大部分数据为零(空数据)时,该文件被认为是稀疏的。
对创建此类文件的支持通常由文件系统提供。这种类型的文件在计算机科学领域得到了大量使用,例如 DBMS(数据库管理系统)、数字图像处理等。

在职的 :

稀疏文件的创建方式与普通(非空)文件不同。每当创建稀疏文件时,表示磁盘空块(字节)的元数据都会写入磁盘,而不是将构成块的实际字节写入磁盘,使用较少的磁盘空间。这是因为不需要保存空字节,因此它们可以用元数据表示。
只有在将任何非空(零)数据写入文件时,才会写入实际数据块。在读取稀疏文件时,文件系统在运行时透明地将表示空块的元数据转换为填充有空字节的“真实”块。应用程序不知道这种转换,因为转换发生在文件系统级别。稀疏文件不需要完全用空数据填充,而文件的某些空白部分也可以标记为稀疏。数据仍然遵循上述机制,但规模较小。

稀疏文件的优点:

  • 无需物理写入任何扇区即可分配大量存储空间,因此可以更快地创建文件。
  • 只有在写入非空数据时才会进行分配,因此节省了磁盘空间。
  • 由于稀疏文件的逻辑空间大于分配的空间,因此可以读取更多的数据然后分配。
  • 如果初始分配需要将所有零写入空间,则不会发生实际分配,从而防止不必要的磁盘读写。
  • 在不完全稀疏的文件上,它减少了首次写入的时间,因为系统不必为“跳过”空间分配块。
  • 在某些情况下比文件压缩更好。

稀疏文件的缺点:

  • 大多数文件复制操作会破坏文件的稀疏属性。因此,文件的稀疏区域在磁盘上显式分配,失去了它们的稀疏属性。
  • 由于文件的逻辑大小可能大于其分配的大小,因此文件系统可用空间报告可能不正确。
  • 一些应用程序不能有效地处理稀疏文件。
  • 稀疏文件可能会随着有效数据写入而变得碎片化