Skip to main content
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

缓存设置和性能

贡献者

缓存是控制器上临时易失性存储的一个区域、其访问速度比驱动器介质更快。

使用缓存时、整体I/O性能可按以下方式提高:

  • 从主机请求读取的数据可能已位于先前操作的缓存中、因此无需访问驱动器。

  • 写入数据最初会写入缓存、这样、应用程序就可以继续运行、而无需等待数据写入驱动器。

默认缓存设置可满足大多数环境的要求、但您可以根据需要进行更改。

存储阵列缓存设置

对于存储阵列中的所有卷、您可以在系统页面中指定以下值:

  • 刷新的起始值-缓存中触发缓存刷新(写入磁盘)的未写入数据的百分比。当缓存保存未写入数据的指定起始百分比时、将触发刷新。默认情况下、当缓存达到80%的全满时、控制器将开始刷新缓存。

  • 缓存块大小—每个缓存块的最大大小、该块是一个用于缓存管理的组织单位。默认情况下、缓存块大小为8 KiB、但可以设置为4、8、16或32 KiB。理想情况下、缓存块大小应设置为应用程序的主要I/O大小。文件系统或数据库应用程序通常使用较小的大小、而较大的大小则适合需要大型数据传输或顺序I/O的应用程序

卷缓存设置

对于存储阵列中的单个卷、您可以从卷页面(菜单:Storage[Volumes])中指定以下值:

  • 读取缓存—读取缓存是一个缓冲区、用于存储已从驱动器读取的数据。用于读取操作的数据可能已位于上次操作的缓存中、因此无需访问驱动器。数据会一直保留在读取缓存中、直到被刷新为止。

    • 动态读取缓存预取—动态缓存读取预取允许控制器在从驱动器向缓存读取数据块时将其他顺序数据块复制到缓存。这种缓存增加了从缓存中填充未来数据请求的可能性。动态缓存读取预取对于使用顺序I/O的多媒体应用程序非常重要预提取到缓存中的数据速率和数据量会根据主机读取的速率和请求大小进行自调整。随机访问不会将发生原因 数据预先提取到缓存中。禁用读取缓存时、此功能不适用。

  • 写入缓存—写入缓存是一个缓冲区、用于存储尚未写入驱动器的主机数据。数据会一直保留在写入缓存中、直到写入驱动器为止。写入缓存可以提高I/O性能。

    注意

    可能丢失数据-如果启用*不使用电池的写入缓存*选项并且没有通用电源进行保护、则可能会丢失数据。此外、如果您没有控制器电池、并且启用了*无电池写入缓存*选项、则可能会丢失数据。

    • 无电池写入缓存—无电池写入缓存设置允许写入缓存继续运行、即使电池缺失、出现故障、已完全放电或未完全充电也是如此。通常不建议选择不带电池的写入缓存、因为断电后数据可能会丢失。通常、在电池充电或更换故障电池之前、控制器会暂时关闭写入缓存。

    • 使用镜像写入缓存-如果写入一个控制器的缓存内存中的数据也写入另一个控制器的缓存中、则使用镜像进行写入缓存。因此、如果一个控制器发生故障、另一个控制器可以完成所有未完成的写入操作。只有在启用了写入缓存且存在两个控制器的情况下、写入缓存镜像才可用。创建卷时的默认设置是使用镜像进行写入缓存。