16.20 - Teradata Database MAPS Architecture 功能支持 - 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
中文 (简体)
Data Mover 支持使用 Teradata Database MAPS Architecture 功能 (MAPS) mapcolocate 参数来复制以下对象:
  • 索引(联接索引或哈希索引)
  • 外部服务器 – 使用以下实用程序进行的数据传输:
    • JDBC
    • TPTAPI
    • T2T
    • T2H
    • TDCH
下表介绍了可以指定 mapcolocate 参数的位置。它们按参数优先级顺序列出:
级别 说明
对象 为指定对象(表、索引或外部服务器)使用 mapcolocate 参数。
数据库 为数据库中的所有指定对象使用 mapcolocate 参数。
作业 为指定作业中的所有对象使用 mapcolocate 参数。
系统 为将指定系统用作目标系统的所有作业使用系统级 map

规则和限制

  • 当对 Teradata Database 16.10 或更高版本使用 ARC 时,必须将 DBS Control 内部标志 EnableARC4MHM 设置为 true。缺省值为 false
  • 在任何级别移动对象或数据库时,ARC 无法指定 mapcolocate 详细信息。
  • ARC 要求源数据库及其对象对完整数据库复制使用全 AMP 连续映射;ARC 将覆盖目标数据库上的对象映射,并使用全 AMP 连续映射。
  • 仅当配置参数 databaseQueryService.useBaseViewsOnly 设置为 true(缺省值)时,Data Mover 才会验证是否满足 ARC MAPS 限制。如果此参数设置为 false,即使 ARC 是唯一可用的复制方法,Data Mover 的缺省设置也不会是 ARC。您可以将force utility作业参数设置为 ARC,强制 Data Mover 允许创建和运行作业。但是,如果不满足 ARC MAPS 限制,可能会出现以下情况:
    • ARC 在运行时出现故障
    • ARC 仅复制对象定义,不复制对象数据
  • 在 Teradata Database 16.10 之前的数据库中,不支持 mapcolocate 参数。
  • 目标用户必须具有目标映射的权限。
  • 当对象所有者和目标登录用户相同时,或者目标所有者的映射为 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>
为创建作业或编辑作业指定作业级 mapcolocate 参数:
<dmCreate>
	. . . . . .
	<log_to_even_table><log_to_event_table>
	<map>TD_SparseMap</map>
	<colocate>ColocationName2</colocate>
	. . . . . .
</dmCreate>
指定数据库级 mapcolocate 参数,如下面的示例中所示:
<database selection="unselected">
	. . . . . .
	<compare_dll></compare_dll>
	<map>TD_SparseMap</map>
	<colocate>ColocationName2</colocate>
	. . . . . .
</database>

要指定表、索引(联接索引或哈希索引)和外部服务器级 mapcolocate 参数,请参阅本指南中的相应章节。