Data Mover 支持使用 Teradata Database MAPS Architecture 功能 (MAPS) map 和 colocate 参数来复制以下对象:
- 表
- 索引(联接索引或哈希索引)
- 外部服务器 – 使用以下实用程序进行的数据传输:
- JDBC
- TPTAPI
- T2T
下表介绍了可以指定 map 和 colocate 参数的位置。它们按参数优先级顺序列出:
级别 | 说明 |
---|---|
对象 | 为指定对象(表、索引或外部服务器)使用 map 和 colocate 参数。 |
数据库 | 为数据库中的所有指定对象使用 map 和 colocate 参数。 |
作业 | 为指定作业中的所有对象使用 map 和 colocate 参数。 |
系统 | 为将指定系统用作目标系统的所有作业使用系统级 map。 |
规则和限制
- 在 Teradata Database 16.10 之前的数据库中,不支持 map 和 colocate 参数。
- 目标用户必须具有目标映射的权限。
- 当对象所有者和目标登录用户相同时,或者目标所有者的映射为 null 时,目标缺省映射是 help session 映射。当目标对象所有者和用户不同时,系统会使用目标所有者的映射作为目标缺省映射。help session 是显示当前会话相关信息的查询。请参阅 Teradata Database 工具和实用程序指南。
- 只允许为 sparse 映射创建 colocate 名称,并且此名称可以是任何有效名称。缺省名称为 DatabaseName_TableName。
- DSA 在复制表时支持用户定义的 map 值,但不支持用户定义的 colocate 值。未指定映射时,DSA 将尝试在目标系统上查找与源表具有相似定义的映射。如果找不到映射或者用户对稀疏映射不具有权限,DSA 将使用缺省映射。
- 启用 DDL 时,请确保以下映射和共同定位参数相匹配:
- 如果在源系统和目标系统上存在映射和共同定位参数,则这些参数应相匹配。
- 如果在作业中提供了映射和共同定位参数,这些参数应与目标系统上的映射和共同定位参数相匹配。
XML 示例
通过 configuration.xml 指定系统级映射参数,并使用 save_configuration 命令进行保存:
<property> <key>map</key> <value>false</value> <maps> <systemLevelMap> <system>prodSystem1</system> <map>sparsemap4amp</map> </systemLevelMap> </maps> </property>
为创建作业或编辑作业指定作业级 map 和 colocate 参数:
<dmCreate> . . . . . . <log_to_even_table><log_to_event_table> <map>TD_SparseMap</map> <colocate>ColocationName2</colocate> . . . . . . </dmCreate>
指定数据库级 map 和 colocate 参数,如下面的示例中所示:
<database selection="unselected"> . . . . . . <compare_dll></compare_dll> <map>TD_SparseMap</map> <colocate>ColocationName2</colocate> . . . . . . </database>
要指定表、索引(联接索引或哈希索引)和外部服务器级 map 和 colocate 参数,请参阅本指南中的相应章节。