Solaris 10 10/08 发行版:为了满足同步事务的 POSIX 要求,提供了 ZFS 意图日志 (ZFS intent log, ZIL)。例如,数据库通常要求其事务在从系统调用中返回时应该在稳定的存储设备上。NFS 和其他应用程序也可以使用 fsync() 来确保数据的稳定性。缺省情况下,ZIL 是通过主存储池中的块分配的。在此 Solaris 发行版中,您可以决定是否要继续从主存储池或从单独的日志设备中分配 ZIL 块。通过在 ZFS 存储池中使用单独的意图日志设备(如使用 NVRAM 或专用磁盘)可能会获得更佳的性能。
ZFS 意图日志的日志设备与数据库日志文件无关。
创建存储池时或创建存储池以后,您可以设置 ZFS 日志设备。有关设置日志设备的示例,请参见使用日志设备创建 ZFS 存储池和向存储池中添加设备。
可以将日志设备附加到现有日志设备,以创建镜像日志设备。此操作等同于在未镜像的存储池中附加设备。
确定设置 ZFS 日志设备是否适合您的环境时,请考虑以下几点:
通过实施单独的日志设备获得的任何性能改进均取决于设备类型、池的硬件配置,以及应用程序工作负荷。有关初步性能信息,请参见以下博客:
可以取消复制或取消镜像日志设备,但日志设备不支持 RAID-Z。
如果未镜像单独的日志设备,且包含日志的设备出现故障,则存储日志块将恢复至存储池。
可以将日志设备作为较大存储池的一部分添加、替换、附加、分离,以及导入和导出。从 Solaris 10 9/10 发行版开始,可以移除日志设备。
日志设备的最小大小与池中每个设备的最小大小 (64 MB) 相同。可能存储在日志设备中的相关的数据量相对较小。提交日志事务(系统调用)时将释放日志块。
日志设备的最大大小应大约为物理内存大小的 1/2,因为这是可存储的最大潜在相关的数据量。例如,如果系统的物理内存为 16 GB,请考虑 8 GB 的最大日志设备大小。