简介 【程序编程相关:DB2 for z/OS and OS/】
【推荐阅读:DB2 和 Java: 总览图】 当人们考虑在数据库引擎中进行并行处理时,他们立即会想到通过使用多个处理器处理单个查询来达到改进的 查询响应时间.人们往往没有注意到:并行处理也可以加速 索引处理,从而改进数据库服务器的总体性能.使用 ibm® db2® universal database™ (udb) for iseries™,就有可能将多个 cpu 用于索引处理.特别是,当创建索引以及由于底层数据更改而维护索引时,db2 udb for iseries 可以使用多个处理器.以并行方式创建与维护索引的能力可应用于传统的二进制基数与编码的向量索引结构. 【扩展信息:用于 J2EE 开发: 成本/收益分析 】db2 udb for iseries 并行处理只可以在 iseries 服务器上使用,其中已经购买.安装与激活了 db2 对称多处理(db2 symmetric multiprocessing,db2 smp)特许功能部件,如 启用并行处理中所述.
并行索引创建
db2 udb for iseries 可以将并行处理用于创建 sql 索引与用键值标识的逻辑文件(即,crtlf 命令).并行索引处理是通过如下方式完成的:在逻辑上,将基本表分成多个数据段,接着每个进程为指定的表段构建索引键值.然后,将由每个并行进程执行的任务合并在一起来完成最后的索引结构.正如您在 图 1 中所看到的那样,使用附加的 cpu 资源可以充分减少创建索引所花费的时间.这种能力在非常大型的数据库环境中或者在需要尽快重新创建索引的恢复方案下变得十分重要.
图 1. 启用并行性之后极大地改进了索引构建时间
并行索引维护
索引维护的任务是更改索引键以反映对相关数据库行的更改(通常通过 insert . update 或 delete 引起).如果更改了客户的订单号或者新的客户订单添加到了数据库,则必须更新所有包含订单号列作为键字段的索引.索引的维护(或更新)影响与添加或更改订单相关的整个事务时间.如果数据库行更改影响多个索引,那么这些索引的维护会串行发生,缺省情况下,每次维护一个索引.首先,订单号更改被传播到 indexa.对 indexa 的更改完成之后,订单号被传播到 indexb,依此类推.
并行索引维护涉及同时维护多个索引.客户的订单号更改可以被同时传播到 indexa 与 indexb.这个并发索引维护处理减少了在整个数据库中更改订单号所花的总计时间.... 下一页