DB2 10.5 for Linux, UNIX, and Windows

load 概述

LOAD 实用程序能够高效地将大量数据移到新创建的表或者已包含数据的表中。 此实用程序能够处理绝大多数数据类型,其中包括 XML、大对象 (LOB) 和用户定义的类型 (UDT)。 由于 LOAD 实用程序直接将格式化的页写入数据库,而 IMPORT 实用程序却要执行 SQL INSERT,因此 LOAD 实用程序的速度比 IMPORT 实用程序快。 LOAD 实用程序不会触发触发器,并且除了验证索引唯一性以外不执行引用约束检查或表约束检查。
装入过程包含几个不同的阶段(请参阅图 1):
  1. 分析
    将数据装入列组织表中时,第一个阶段为分析阶段,此阶段是列组织表特有的。仅当需要构建列压缩字典时(此过程在 LOAD REPLACE 操作、LOAD REPLACE RESETDICTIONARY 操作、LOAD REPLACE RESETDICTIONARYONLY 操作或 LOAD INSERT 操作(如果按列组织的表为空)期间完成),才会发生分析阶段。对于列组织表,在此阶段完成之后,将进入装入、构建和删除阶段。索引复制阶段仅适用于行组织表。
  2. 装入
    在装入阶段,会将数据装入到表中,必要时还收集索引键和表统计信息。并且,将根据 LOAD 命令中的 SAVECOUNT 参数指定的时间间隔建立保存点或一致点。将生成消息以指示在保存点成功装入的输入行数。
  3. 构建
    在构建阶段,将根据装入阶段收集的索引键生成索引。在装入阶段将对索引键进行排序并收集索引统计信息(如果指定了 STATISTICS USE PROFILE 选项且概要文件指示收集索引状态)。这些统计信息与通过 RUNSTATS 命令收集的统计信息类似。
  4. 删除
    在删除阶段,将从表中除去导致唯一键或主键违例的行。如果指定了装入异常表,那么这些删除的行将存储在该表中。
  5. 索引复制
    在索引复制阶段,将索引数据从系统临时表空间复制到原始表空间。在指定了 READ ACCESS 选项的装入操作期间,仅当指定使用系统临时表空间来创建索引时,才会出现这种情况。
图 1. 按行组织的表的装入过程的各个阶段
此图显示按行组织的表的装入过程各个阶段的时间线。
注: 调用 LOAD 实用程序后,可以使用 LIST UTILITIES 命令来监视装入操作的进度。

装入数据时需要下列信息:

装入方式
  • INSERT
    在此方式下,装入将输入数据追加至表,并且不对现有数据进行任何更改。
  • REPLACE
    在此方式下,装入将删除表中的现有数据并用输入数据填充该表。
  • RESTART
    在此方式下,已中断的装入将继续。在大多数情况下,装入将从它失败时所处的阶段继续。如果该阶段为装入阶段,那么装入将从上一个成功一致点继续。
  • TERMINATE
    在此方式下,将回滚失败的装入操作。

可以指定的选项包括: