[分享] DB2 如何提高IMPORT命令性能

[复制链接]
  • TA的每日心情
    开心
    2023-12-15 09:13
  • 签到天数: 55 天

    [LV.5]六品通判

    1197

    主题

    1965

    回帖

    13万

    积分

    Administrator

    分子与原子计算公式

    Rank: 9Rank: 9Rank: 9

    积分
    132061

    终身成就奖优秀斑竹奖宣传大使奖特殊贡献奖

    QQ
    发表于 2007-7-4 22:14:51 | 显示全部楼层 |阅读模式
      在利用 DB2 提供的 IMPORT 命令进行数据导入时,所有的约束都要被验证,所有装载的行都会记入日志,且触发器也会被激活,因此在装载大量数据时,IMPORT 实用程序的性能会明显低于 DB2 的 LOAD 实用程序,为提高 IMPORT 的性能,这里为用户提供两种方法。

      针对 DB2 的 IMPORT 实用程序,使用 COMPOUND 选项或在 BIND db2uimpm.bnd 文件时加入缓冲区插入选项都可以使 IMPORT 的性能有较大的提高,且对多数情况下导入数据量都很大的分区式数据库,这些方法对于 IMPORT 性能的提高尤为重要。

      下面就介绍一下这两种方法的具体实现步骤:

      1. 使用 INSERT BUF 选项绑定 IMPORT 实用程序以启用缓冲区插入,即对 db2uimpm 程序包使用 INSERT BUF 选项重新绑定到数据库。

      例如:
      db2 connect to sample
      db2 bind db2uimpm.bnd insert buf
      db2 import from myfile of del insert into mytable

      2. 发出导入数据的 IMPORT 命令时使用 COMPOUND 选项,如在 MODIFIED BY 语句后使用 COMPOUND=n,以便将插入语句中的 n 行记录作为一组一起导入。对比逐行记录插入的方式,这种方式减少了网络的通信量。COMPOUND 的范围为 1 - 100。

      例如:
      db2 connect to sample
      db2 import from myfile of del modified by compound=100 insert into mytable
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表