预取处理

Db2 对英镑依赖页面集和分区的预取处理取决于组缓冲池分配的耦合设施级别(CFLEVEL)。

如果组缓冲池分配在耦合设施中,且 CFLEVEL=0 或1,则 Db2 一次读取并记录组缓冲池中的一页。

如果组缓冲池在耦合设施中分配,且耦合设施为 CFLEVEL=2 或更高版本,则 Db2 可以通过向耦合设施发出一个请求来注册正在预取的整个页面列表。 这可用于顺序预取(包括顺序检测)和列表预取。 在列表中, Db2 不包括本地缓冲池中的任何有效页面。

对于缓存为已更改的页面,或锁定为已丢弃的页面, Db2 仍会从组缓冲池中逐个检索已更改的页面。 对于大型顺序查询,更改的页面很可能不存在于组缓冲池中。

对于在组缓冲池中缓存为干净的页面, Db2 可以从组缓冲池中获取页面(一次一页),也可以将页面包含在磁盘读取I/O请求中,具体取决于哪种方式更高效。