目标元数据任务设置 - Amazon Database Migration Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

目标元数据任务设置

目标元数据设置包括:有关如何使用任务配置文件设置任务设置的信息,请参阅。任务设置示例.

  • TargetSchema— 目标表架构名称。如果此元数据选项为空,则使用源表中的架构。如果未定义任何源架构,Amazon DMS 自动将目标数据库的所有者前缀添加到所有表。对于 MySQL 类型的目标终端节点,该选项应保留为空。

  • LOB 设置 — 用于确定大对象 (LOB) 的管理方式的设置。如果您设置 SupportLobs=true,则必须将下列项之一设置为 true

    • FullLobMode— 如果将此选项设置为true,则必须输入LobChunkSize选项。输入在将数据复制到目标时要使用的 LOB 数据块的大小 (以 KB 为单位)。FullLobMode 选项最适合非常大的 LOB 大小,但往往会导致加载速度较慢。的建议值LobChunkSize是 64 千字节。增加的价值LobChunkSize超过 64 千字节可能会导致任务失败。

    • InlineLobMaxSize— 此值决定了哪些 LOBAmazon DMS在满载期间以内联方式传输。传输小型 LOB 比从源表查找它们的效率更高。完全加载期间,Amazon DMS 将检查所有 LOB 并对小于 InlineLobMaxSize 的 LOB 执行内联传输。Amazon DMS 将以 FullLobMode 传输所有大于 InlineLobMaxSize 的 LOB。的默认值InlineLobMaxSize范围为 0,范围为 1 —102400 千字节 (100 MB)。仅当您知道大部分 LOB 小于 InlineLobMaxSize 中指定的值时,为 InlineLobMaxSize 设置值。

    • LimitedSizeLobMode— 如果将此选项设置为true,则必须输入LobMaxSize选项。输入单个 LOB 的最大大小(以 KB 为单位)。的最大推荐值LobMaxSize是 102400 千字节(100 MB)。

    有关使用这些任务 LOB 设置的条件的更多信息,请参阅。在 Amazon DMS 任务中为源数据库设置 LOB 支持. 您还可以控制各个表的 LOB 管理。有关更多信息,请参阅 表和集合设置规则和操作

  • LoadMaxFileSize— 基于 CSV 的目标终端节点(如 MySQL、PostgreSQL 和 Amazon Redshift)的选项,支持使用逗号分隔值 (.csv) 文件加载数据。LoadMaxFileSize定义磁盘上存储的未加载数据 (例如 .csv 文件) 的最大大小。该选项会覆盖目标终端节点连接属性,maxFileSize. 您可以提供介于 0 (指示该选项不会覆盖连接属性) 和 100000 KB 之间的值。

  • BatchApplyEnabled— 确定是否单独应用了每个事务或是否批量提交了更改。原定设置值为 false

    何时BatchApplyEnabled设置为true、Amazon DMS如果目标表具有唯一的约束条件,则会生成错误消息。何时BatchApplyEnabled设置为 true 并且Amazon DMS使用默认错误处理策略在表中遇到数据错误错误Amazon DMS任务从批处理模式切换到 one-by-one 其余表格的模式。要改变这种行为,你可以设置"SUSPEND_TABLE"对以下策略执行的操作"ErrorBehavior"任务设置 JSON 文件的组属性:

    • DataErrorPolicy

    • ApplyErrorDeletePolicy

    • ApplyErrorInsertPolicy

    • ApplyErrorUpdatePolicy

    有关此的更多信息"ErrorBehavior"group 属性,请参阅中的示例任务设置 JSON 文件指定任务设置AmazonDatabase Migration Service. 将这些策略设置为"SUSPEND_TABLE",Amazon DMS然后,任务会暂停引发错误的任何表上的数据错误,并在批处理模式下对所有表继续存在。

    您可以使用BatchApplyEnabled带有参数BatchApplyPreserveTransaction参数。如果 BatchApplyEnabled 设置为 true,则 BatchApplyPreserveTransaction 参数确定事务完整性。

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

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

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

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

    有关将这些设置用于更改数据捕获 (CDC) 加载的更多信息,请参阅。更改处理优化设置.

  • ParallelLoadThreads— 指定下列项的线程的数目:Amazon DMS使用将每个表加载到目标数据库中。此参数具有非 RDBMS 目标的最大值。DynamoDB 目标的最大值为 200。Amazon Kinesis Data Streams、Apache Kafka 或亚马逊的最大值。 OpenSearch 服务目标是 32。您可以请求提高此最大值限制。有关单个表的并行加载设置的信息,请参阅 表和集合设置规则和操作

  • ParallelLoadBufferSize— 指定在缓冲区(并行加载线程将数据加载到目标时使用)中存储的最大记录数。默认值是 50。最大值为 1,000。目前,只有在 DynamoDB、Kinesis、Apache Kafka 或时,此设置才有效。 OpenSearch 目标是。将此参数与 ParallelLoadThreads 一起使用。仅在有多个线程时 ParallelLoadBufferSize 才有效。有关单个表的并行加载设置的信息,请参阅 表和集合设置规则和操作

  • ParallelLoadQueuesPerThread— 指定每个并发线程访问的队列数,以便从队列中取出数据记录并为目标生成批处理负载。默认值为 1。目前,只有在目标为 Kinesis 或 Apache Kafka 时,才有效。

  • ParallelApplyThreads— 指定并行线程数Amazon DMS使用在 CDC 加载期间将数据记录推送到 Kinesis、Apache Kafka、OpenSearch 或 Amazon Redshift 目标终端节点。默认值为零 (0)。

  • ParallelApplyBufferSize— 指定在 CDC 加载期间要在每个缓冲区队列中存储的最大记录数,以便将并发线程推送到 Kinesis、Apache Kafka、OpenSearch 或 Amazon Redshift 目标终端节点。默认值是 100。当 ParallelApplyThreads 指定多个线程时,请使用此选项。

  • ParallelApplyQueuesPerThread— 指定每个线程访问的队列数,以便从队列中取出数据记录并在 CDC 期间为 Kinesis、Apache Kafka 或 OpenSearch 终端节点生成批处理负载。默认值是 1。