

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 目标元数据任务设置
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.TargetMetadata"></a>

目标元数据设置包括：有关如何使用任务配置文件来设置任务设置的信息，请参阅[任务设置示例](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example)。
+ `TargetSchema` – 目标表架构名称。如果此元数据选项为空，则使用源表中的架构。如果未定义任何源架构， AWS DMS 自动将目标数据库的所有者前缀添加到所有表。对于 MySQL 类型的目标终端节点，该选项应保留为空。在数据映射中重命名架构优先于此设置。
+ LOB 设置-决定如何管理大型对象 (LOBs) 的设置。如果您设置 `SupportLobs=true`，则必须将下列项之一设置为 `true`：
  + `FullLobMode` – 如果将该选项设置为 `true`，则必须为 `LobChunkSize` 选项输入值。输入在将数据复制到目标时要使用的 LOB 数据块的大小 (以 KB 为单位)。`FullLobMode` 选项最适合非常大的 LOB 大小，但往往会导致加载速度较慢。`LobChunkSize` 的建议值为 64 KB。将 `LobChunkSize` 的值增加到 64 KB 以上可能会导致任务失败。
  + `InlineLobMaxSize`— 此值决定了在满载期间哪些以内联方式 LOBs AWS DMS 传输。小额 LOBs 传输比从源表中查找更有效。在满载期间， AWS DMS 检查所有 LOBs 并对小于的进行内联传输`InlineLobMaxSize`。 LOBs AWS DMS 转账全部 LOBs 大于 `InlineLobMaxSize` in `FullLobMode`。`InlineLobMaxSize` 的默认值是 0，范围为 1–102400 KB（100 MB）。`InlineLobMaxSize`只有在您知道大多数值 LOBs 都小于中指定的值时，才为设置值`InlineLobMaxSize`。
  + `LimitedSizeLobMode` – 如果将该选项设置为 `true`，则必须为 `LobMaxSize` 选项输入值。输入单个 LOB 的最大大小（以 KB 为单位）。`LobMaxSize` 的最大值为 102400 KB（100 MB）。

  有关这些任务 LOB 设置的使用条件的更多信息，请参阅[在任务中为源数据库设置 LOB 支持 AWS DMS](CHAP_Tasks.LOBSupport.md)。您还可以控制对单个表 LOBs 的管理。有关更多信息，请参阅 [表和集合设置规则和操作](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.md)。
+ `BatchApplyEnabled` – 确定是否单独应用了每个事务或是否批量提交了更改。默认值为 `false`。

  将 `BatchApplyEnabled` 设置为 `true` 时，DMS 要求**源**表上有主键（PK）或唯一密钥（UK）。如果源表上没有 PK 或 UK，则只能应用批量插入，不能应用批量更新和删除。

  将 `BatchApplyEnabled` 设置为 `true` 时，如果**目标**表具有唯一约束和主键，则 AWS DMS 生成错误消息。如果 `BatchApplyEnabled` 设置为 `true`，则不支持同时具有唯一约束和主键的目标表。

  如果设置`BatchApplyEnabled`为 true，并且在使用默认错误处理策略的表中 AWS DMS 遇到数据错误，则其余表的 AWS DMS 任务会从批处理 one-by-one模式切换到模式。要更改此行为，可以在任务设置 JSON 文件的 `"ErrorBehavior"` 组属性中设置对以下策略的 `"SUSPEND_TABLE"` 操作：
  + `DataErrorPolicy`
  + `ApplyErrorDeletePolicy`
  + `ApplyErrorInsertPolicy`
  + `ApplyErrorUpdatePolicy`

  有关此 `"ErrorBehavior"` 组属性的更多信息，请参阅[为 AWS Database Migration Service 任务指定任务设置](CHAP_Tasks.CustomizingTasks.TaskSettings.md)中的任务设置 JSON 文件示例。将这些策略设置为后`"SUSPEND_TABLE"`，该 AWS DMS 任务会暂停所有引发错误的表上的数据错误，并继续以批处理模式处理所有表。

  您可以将 `BatchApplyEnabled` 参数与 `BatchApplyPreserveTransaction` 参数一起使用。如果 `BatchApplyEnabled` 设置为 `true`，则 `BatchApplyPreserveTransaction` 参数确定事务完整性。

  如果 `BatchApplyPreserveTransaction` 设置为 `true`，则保留事务完整性，并确保批处理包含源中的事务的所有更改。

  如果 `BatchApplyPreserveTransaction` 设置为 `false`，则会临时放弃事务完整性以提高性能。

  `BatchApplyPreserveTransaction` 参数仅适用于 Oracle 目标终端节点，并且仅在 `BatchApplyEnabled` 参数设置为 `true` 时相关。

  如果复制中包含 LOB 列，则只能在受限 LOB 模式下使用 `BatchApplyEnabled`。

  有关将这些设置用于更改数据捕获（CDC）负载的更多信息，请参阅[更改处理优化设置](CHAP_Tasks.CustomizingTasks.TaskSettings.ChangeProcessingTuning.md)。
+ `MaxFullLoadSubTasks` – 指示要并行加载的表的最大数目。默认值为 8；最大值为 49。
+ `ParallelLoadThreads`— 指定用于将每个表加载到目标数据库的线程数。 AWS DMS 对于非 RDBMS 目标，此参数具有最大值。DynamoDB 目标的最大值为 200。亚马逊 Kinesis Data Streams、Apache Kafka 或 OpenSearch 亚马逊服务目标的最大值为 32。您可以要求增加该最大值。`ParallelLoadThreads` 适用于完全加载任务。有关单个表的并行加载设置的信息，请参阅 [表和集合设置规则和操作](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.md)。

  该设置适用于以下端点引擎类型：
  + DynamoDB
  + Amazon Kinesis Data Streams
  + Amazon MSK
  + 亚马逊 OpenSearch 服务
  + Amazon Redshift

  AWS DMS 支持 My `ParallelLoadThreads` SQL 作为额外的连接属性。 `ParallelLoadThreads`不适用于作为任务设置的 MySQL。
+ `ParallelLoadBufferSize` 指定在缓冲区（并行加载线程将数据加载到目标时使用）中存储的最大记录数。默认值是 50。最大值为 1000。目前，此设置仅在 DynamoDB、Kinesis、Apache Kafka 或是目标时才有效。 OpenSearch 将此参数与 `ParallelLoadThreads` 一起使用。仅在有多个线程时 `ParallelLoadBufferSize` 才有效。有关单个表的并行加载设置的信息，请参阅 [表和集合设置规则和操作](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.md)。
+ `ParallelLoadQueuesPerThread` – 指定每个并发线程访问的队列数，以便从队列中取出数据记录并为目标生成批处理负载。默认值是 1。目前，只有在 Kinesis 或 Apache Kafka 为目标时，此设置才有效。
+ `ParallelApplyThreads`— 指定 CDC 加载期间 AWS DMS 用于将数据记录推送到亚马逊 DocumentDB、Kinesis、Amazon MSK OpenSearch 或 Amazon Redshift 目标终端节点的并发线程数。默认值为零（0）。

  该设置仅适用于 CDC。该设置不适用于完全加载。

  

  该设置适用于以下端点引擎类型：
  + Amazon DocumentDB（兼容 MongoDB）
  + Amazon Kinesis Data Streams
  + Amazon Managed Streaming for Apache Kafka
  + 亚马逊 OpenSearch 服务
  + Amazon Redshift
+ `ParallelApplyBufferSize`— 指定在每个缓冲队列中存储的最大记录数，以便并发线程在 CDC 加载期间推送到亚马逊 DocumentDB、Kinesis、Amazon MSK OpenSearch 或 Amazon Redshift 目标终端节点。默认值是 100。最大值为 1000。当 `ParallelApplyThreads` 指定多个线程时，请使用此选项。
+ `ParallelApplyQueuesPerThread`— 指定每个线程访问的队列数量，以便从队列中提取数据记录，并在 CDC 期间为 Amazon DocumentDB、Kinesis、Amazon MSK 或终端节点生成批量加载。 OpenSearch默认值是 1。