使用此功能,您可以将视图定义和基础视图数据从源系统复制到目标系统。
复制视图数据时,可以使用 TPTAPI_UPDATE、TPTAPI_STREAM、T2T 和 JDBC 复制完整视图;指定源暂存表时,可以使用 ARC 和 DSA 进行部分复制。仅当指定源暂存表且源视图包含 AVRO/CSV 存储格式的列时,才允许使用 ARC 或 DSA 复制完整视图。TPTAPI_LOAD 不能用于复制视图数据,这是因为 Data Mover 创建的目标表或暂存表是多重集表,而 TPTAPI_LOAD 不支持这种表。要将与视图关联的数据复制到 Hadoop 系统,请使用 T2H。
从基础视图中复制数据时的限制
从基础视图中复制数据时,存在以下限制:
- 从视图中移动基础数据时,不能使用 TPTAPI_LOAD 作为加载实用程序。
- 当从视图中移动基础数据并且未使用源暂存表时,请勿将 ARC 或 DSA 用作加载实用程序。
行计数验证
从基础视图中复制数据后,您可以验证源视图和目标表的行计数。要执行行计数验证,必须为视图指定 validate_row_count 元素。
<views> <view selection="included" copyData="true"> <name>deptsals</name> <database>MyDb</database> <view_data_table> <target_table>TargetTable</target_table> <target_database>TargetDb</target_database> </view_data_table> <staging_database> <name>TargetDb_Staging</name> </staging_database> <validate_row_count>ALL</validate_row_count> </view> </views>
复制视图数据到目标视图时,validate_row_count 元素将验证源视图和目标视图的行计数。
validate_row_count 的有效值为 ALL、PARTIAL 或 NONE。行计数的验证结果可在状态输出中查看。只有从视图中复制数据时 (copyData="true"),才会执行行计数验证。仅复制视图定义时 (copyData="false"),不会执行行计数验证,即使为该视图指定了 validate_row_count 元素也是如此。
无法在 Teradata 和 Hadoop 系统之间复制视图定义,但可以将与视图关联的数据从 Teradata 复制到 Hadoop。不支持在将视图数据复制到 Hadoop 时选择部分行计数验证。