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

了解 SANtricity 软件中的缓存设置和性能

高速缓存内存是控制器上的临时易失性存储区域,其访问时间快于驱动器介质。

使用缓存,可以通过以下方式提高整体 I/O 性能:

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

  • 写入数据最初会写入缓存,从而使应用程序可以继续,而不是等待数据写入驱动器。

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

存储阵列缓存设置

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

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

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

卷缓存设置

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

  • 读缓存 — 读缓存是存储已从驱动器读取的数据的缓冲区。读取操作的数据可能已经存在于先前操作的缓存中,因此无需访问驱动器。数据保留在读缓存中,直到刷新为止。

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

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

    注意

    可能丢失数据 — 如果启用 无电池写缓存 选项,并且没有通用电源进行保护,则可能会丢失数据。此外,如果您没有控制器电池并启用 无电池写缓存 选项,则可能会丢失数据。

    • 不带电池的写缓存 — 不带电池的写缓存设置允许写缓存继续,即使电池丢失、故障、完全放电或未完全充电。通常不建议选择没有电池的写缓存,因为如果断电,数据可能会丢失。通常,控制器会暂时关闭写缓存,直到电池充电或更换故障电池。

    • 带镜像的写缓存 — 当写入一个控制器的缓存内存的数据也写入另一个控制器的缓存内存时,将发生带镜像的写缓存。因此,如果一个控制器发生故障,另一个控制器可以完成所有未完成的写入操作。仅当写缓存已启用且存在两个控制器时,写缓存镜像才可用。使用镜像进行写缓存是创建卷时的默认设置。