SMS 和 DMS 设备注意事项

在选择将文件系统文件还是设备用于表空间容器时有几个选项要考虑:数据的缓冲以及是否使用 LOB 或 LONG 数据。

  • 数据的缓冲

    从磁盘读取的表数据通常可在数据库的缓冲池中找到。 在某些情况下,在应用程序实际使用一个数据页之前,可能从缓冲池释放该页,特别在其他数据页需要缓冲池空间时,更是如此。 对于使用系统管理的空间 (SMS) 或数据库管理的空间 (DMS) 文件容器的表空间,文件系统高速缓存可以消除另外将需要的 I/O。

    使用数据库管理的空间 (DMS) 设备容器的表空间不使用文件系统或其高速缓存。 因此,您可以增大数据库缓冲池的大小,减小文件系统高速缓存的大小,以修正这样一个事实,即,使用设备容器的 DMS 表空间并未执行双缓冲区。

    如果系统级别的监视工具显示:与等价的 SMS 表空间相比,使用设备容器的 DMS 表空间的 I/O 更高,这种差别可能是由于双缓冲区所导致的。

    重要信息: 不推荐使用 "系统管理的空间" (SMS) 的用户表空间,在将来的发行版中可能会将其除去。 请改用数据库管理的空间 (DMS) 或自动存储器表空间 (AMS)。
  • 使用 LOB 或 LONG 数据

    应用程序检索 LOB 或 LONG 数据时,数据库管理器不会将该数据高速缓存到其缓冲区中。 每次应用程序需要其中一页时,数据库管理器都必须从磁盘检索该页。 但是,如果 LOB 或 LONG 数据存储在 DMS 文件容器中,那么文件系统高速缓存可能会提供缓冲,并因此提供更好的性能。

    因为系统目录包含一些 LOB 列,所以应将它们保留在 DMS 文件表空间中。