📜  稀疏文件

📅  最后修改于: 2021-07-05 08:31:16             🧑  作者: Mango

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

在职的 :

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

稀疏文件的优点:

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

稀疏文件的缺点:

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