Optical Subsystem 如何影响性能

Optical Subsystem为“一次写入多次读取”(WORM) 的 Optical Subsystem 的简单大对象(TEXT 或 BYTE 数据)扩展了数据库服务器的存储能力。数据库服务器使用内存中的高速缓存缓冲从Optical Subsystem请求的初始 TEXT 或 BYTE 数据页面。

内存高速缓存是公共存储区域。只要内存高速缓存还有空间,数据库服务器就会将任何应用程序请求的简单大对象添加到内存高速缓存中。要释放内存高速缓存中的空间,应用程序必须释放它正使用的 TEXT 或 BYTE 数据。

将 TEXT 或 BYTE 数据直接检索到内存中而不是在磁盘上缓冲数据时,会发现性能优势极为明显。因此,使用Optical Subsystem时,适当的高速缓存缩放大小至关重要。使用 OPCACHEMAX 配置参数指定内存高速缓存中可用空间总量。应用程序指示当它们设置 GBASEDBTOPCACHE 环境变量时需要访问部分内存高速缓存。 有关详细信息,请参阅 GBASEDBTOPCACHE(Optical Subsystem 环境变量)

无法完全放入高速缓存剩余空间中的简单大对象会存储在 STAGEBLOB 配置参数指定的 Blob 空间中。此登台区域作为从Optical Subsystem检索的 Blob 页在磁盘上的辅助高速缓存。从Optical Subsystem检索的简单大对象保存在登台区域中,直到请求它们的事务完成。

数据库服务器管理员会使用 onspaces 实用程序或使用 ON-Monitor(仅限 UNIX™)来创建登台区域 BLOB 空间。

您可以使用 onstat -O 来监视内存高速缓存和 STAGEBLOB BLOB 空间的利用率。如果对内存高速缓存的争用加剧,那么增加 OPCACHEMAX 配置参数的配置文件中列出的值。 (新值会在数据库服务器下次启动共享内存时生效。)有关 Optical Subsystem 的完整描述,请参阅 GBase 8s Optical Subsystem 指南