并行方式处理DB2 for iSeries索引
2007-05-20 16:17:14 来源:WEB开发网*MAX — 在并行索引维护和构建期间,DB2 UDB 引擎可以使用可用于作业(连接)的所有 CPU 处理器和所有内存。
*OPTIMIZE —“好邻居”设置。DB2 UDB 引擎在 CPU 处理器之间和内存中进行作业共享。
*NBRTASKS n — 它设置 DB2 UDB 引擎可以使用的最大 CPU 处理器数。这不是 QQRYDEGREE 系统值的有效值。
*NONE — 这是缺省值。对索引处理不使用并行处理。
在作业或连接级别
如果您想要将并行处理限制于单个作业或连接,则使用 CHGQRYA (更改查询属性)CL 系统命令或 QAQQINI 文件来为作业或连接启用并行处理。这些接口将覆盖系统值设置。
CHGQRYA CL 命令的 DEGREE 参数接受与系统值相同的值。如果在作业中执行下面的 CHGQRYA 命令,那么不管系统值是什么,该作业的并行度只能设置成 *MAX 。
CHGQRYA DEGREE(*MAX)
可以在作业中多次发出该命令来打开或关闭并行性。
QAQQINI 文件同样允许您为单个作业或连接指定并行处理。象可以在 PC 中找到的 .INI 文件(它们用于存储控制 PC 工具和应用程序的行为(颜色、窗口大小等)的配置设置)一样, QAQQINI 文件可用来影响数据库引擎的行为 — 在这种情况下是并行处理行为。可以在多个数据库请求之间动态保存和应用这些 QAQQINI 配置设置。
QAQQINI 文件只是一个标准的数据库表这一事实意味着:您可以根据环境需要,动态地更改不同属性的值。它还非常灵活,因为标准数据库接口可用来更改 QAQQINI 属性的值。下面的SQL 语句演示了如何使用 QAQQINI 文件来将并行处理度设置为 *OPTIMIZE:
UPDATE MyLib.QAQQINISET QQVAL = '*OPTIMIZE' WHERE QQPAM='PARALLEL_DEGREE'
对于在作业或连接期间可以更改属性值的次数没有限制。
结束语
本文演示了 DB2 SMP 功能部件为非查询工作负载所提供的并行处理的价值。要启用并行索引处理,可在构建索引、装入数据或执行批处理前,通过本文中描述的接口之一来激活并行处理。通过这样做,您可以更充分利用具有多个 CPU 的服务器上的 CPU 资源并提高性能。
更多精彩
赞助商链接