16.20 - 验证行计数 - Teradata Data Mover

Teradata® Data Mover 用户指南

Product
Teradata Data Mover
Release Number
16.20
Published
2021 年 11 月
Content Type
用户指南
Publication ID
B035-4101-107K-CHS
Language
中文 (简体)

从 Teradata 到 Teradata、Teradata 到 Hadoop 以及 Hadoop 到 Teradata 移动表时,可以验证表的行计数。

值不区分大小写。
  1. 要验证某个表的行计数,请将 validate_row_count 添加到表对象。
    <table selection="included">
    	<name>MyTestTable_1</name>
    	<validate_row_count>all</validate_row_count>
    </table>
    下表列出了 validate_row_count 的有效值。
    说明

    ALL

    对整个表执行行计数检查。

    此选项可用于部分表复制。例如,如果您想验证源表和目标表是否同步,可在复制完部分表后检查完整表的行计数。

    NONE

    不执行行计数检查。

    这是缺省值。

    PARTIAL

    对已复制的数据子集执行行计数检查。此选项仅可用于部分表复制。如果用于完整表复制,将导致错误。

    要进行部分行计数验证,可以对源系统和目标系统使用一条 WHERE 子句。大多数情况下,在执行行计数验证查询时,Data Mover 不会替换 WHERE 子句中的表名称。但有一个例外:如果 WHERE 子句包含一个完全限定的源表名称,并且该表的位置发生了改变或被重命名,则该完全限定的源表名称将被替换为完全限定的目标表名称。

    下表举例说明了预期的行为:
    源对象 WHERE 子句 目标 WHERE 子句
    完全限定的源对象
    WHERE col1 in select c1 from sourcedb.sourcetable;
    WHERE col1 in select c1 from targetdb.targettable;
    WHERE col1 in select c1 from "sourcedb"."sourcetable";
    WHERE col1 in select c1 from "targetdb"."targettable";
    非完全限定的源对象
    WHERE col1 in select c1 from sourcetable;
    WHERE col1 in select c1 from sourcetable;
    完全限定的非源对象
    WHERE col1 in select c1 from sourcedb.tableA;
    WHERE col1 in select c1 from sourcedb.tableA;
  2. 键入 status 命令并将 output_level 设置为 3 或更大值,查看行计数验证结果。这样将显示表名称、源和目标的行计数、行计数是否同步,以及验证类型是 PARTIAL 还是 ALL。