CD 表和性能调整

CD 表和 UOW 表由 Capture 和 Apply 程序使用。 因此,这些表会对复制性能产生重大影响。

使用以下有关 CD 表的建议来优化复制性能:
  • 当 CD 表包含大量数据时,请对每个表运行 RUNSTATS 实用程序。 对于每个 CD 表,您只需要收集一次统计信息,因为这些统计信息的用途是指示 Db2® 优化器将关联的索引用于查询 CD 表。 System i 中没有与 RUNSTATS 实用程序相当的工具,因此没有必要收集统计数据。
  • 使用 REORG 实用程序 ( IBM® i的 RGZPFM 命令) 定期重组 CD 表。 CD 表易失,并且重新组织这些表允许 Db2 复用磁盘空间以更高效地使用现有空间。

    z/OS®: 使用带有 PREFORMAT 选项的 REORG 实用程序来加速 Capture 程序的插入处理。 例如, Db2 for z/OS 将扩展数据块添加到数据集末尾 (这可能很昂贵) ,而不是复用或回收由于 Capture 修剪而在主分配中不再需要的空间。

    IBM i: 当 Capture 作业结束时,您可以通过在 ENDDPRCAP 命令上指定 RGZCTLTBL 关键字来自动重组 CD 表和 UOW 表。 从表中修剪行会除去数据,但直到您重组表后才会回收磁盘空间。

  • 当您使用复制中心, asnclp 命令或 System i 命令来创建复制控制表或注册复制源时,生成的 SQL 脚本将为每个表定义特定索引。 通常,请勿为 CD 表或 UOW 表创建额外的索引,因为生成的索引对于复制是最佳的,而其他索引会为 Capture 和 Apply 程序增加不必要的查询开销。 在某些情况下,使用预订集成员谓词所使用的其他列来删除和重新创建这些索引可能很有用。
  • z/OS: 为复制控制表和 CD 表生成的 SQL 脚本还指定每个表的锁定大小。 请勿从 IBM提供的值更改这些锁定大小,尤其是对于 CD 表和 UOW 表。 降低锁定大小会降低性能。 增大锁定大小可能会导致 Capture 工作程序与修剪线程之间的争用。