对于 SAN LUN,LUN 精简预配的程度取决于访问 LUN 的主机应用程序的性质。如果应用程序始终访问 LUN 的特定部分,则该卷的精简程度保持不变。但是,随着应用程序访问的 LUN 区域越来越多样化,Oracle FS System 将为 LUN 分配额外的物理空间,从而导致卷的精简程度降低。
某些应用程序访问卷的大部分或全部可寻址空间。在这些情况下,当应用程序执行时,卷将从精简型预配转变为完全预配。此类应用程序的一个示例是 mkfs 实用程序,它可在分区上创建文件系统。当 mkfs 实用程序格式化文件系统时,该实用程序将写入大部分或全部分区,导致 Oracle FS System 上的底层卷变成完全预配。在这些情况下,使用精简型预配创建底层卷没有什么价值。
为了防止 MFT 成为碎片,Windows 为 MFT 保留了一个缓冲区。该缓冲区的大小可配置为驱动器空间的 12.5%、25%、37.5% 或 50%。在未使用的空间用尽之前,Windows 不会在该缓冲区中创建新文件。每当驱动器空间的剩余部分变满时,缓冲区大小都会减半。这种策略为额外的写入操作提供了新空间。
如果在首次填充时占用的容量超过最大容量的 90%,尤其是在使用 NTFS 时,Oracle 不建议创建精简型预配 LUN。NTFS 写入遍及 LUN,从而导致分配与写入的数据量不匹配。
使用率很高但运行时没有很多空闲容量的 NTFS 文件系统最终会用尽所有容量,除非文件系统定期进行碎片整理。NTFS 偏向于写入新分配的空间,而不是重复使用以前写入的空间。可以在最初采用精简型预配的情况下使用 NTFS,但是使用的分配量很快就会超过文件系统显示为已使用的数据量。
在 Linux 平台上,EXT2 和 EXT3 文件系统会在 LUN 的整个逻辑块地址 (logical block addresses, LBA) 范围内写入元数据。驱动器划分为块组,元数据存在于每个块组的开头。这种配置通常会导致管理员在创建文件系统时预配整个 LUN。之所以发生这种完全预配,是因为元数据写入低于 Oracle FS System 使用的最小分配单元。这种情况会导致系统将每个分配区扩展到最大大小。
总之,精简型预配的使用是否成功取决于文件系统或使用 LUN 的应用程序。