Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103593197
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-04-13 00:16:55

   来源:赛迪论坛  

【导读】本文介绍在利用 DB2 提供的 IMPORT 命令进行数据导入时,能够提高 IMPORT 的性能的两种方法。

在利用 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>
阅读(350) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~