如何创建仅限验证的 AWS DMS 任务?
我想创建一个 AWS Database Migration Service(AWS DMS)任务以用于验证目的,例如预览和验证数据。
简短描述
AWS DMS 允许您使用 AWS DMS 控制台或 AWS 命令行界面(AWS CLI)创建仅限验证的任务。您可以使用仅限验证的任务来验证数据,而无需执行任何迁移或数据复制。使用仅限验证的任务时,现有的迁移任务不会产生任何开销,因为验证本身与迁移是分离的。
有两种仅限验证的任务:仅限完整加载验证的任务和仅限更改数据捕获(CDC)验证的任务。
- 如果报告了许多故障,则仅限完整加载验证的任务的完成速度要比其 CDC 等效任务快得多。但是,在完整加载模式下,对源端点或目标端点的更改会被报告为故障,这可能是一个缺点。
- 仅限 CDC 验证的任务根据平均延迟来延迟验证。然后,他们会多次重试故障,然后再报告故障。如果大多数数据比较导致故障,那么仅限 CDC 验证的任务将非常缓慢,这可能是一个缺点。
有关如何使用仅限验证的任务的更多信息,请参阅仅限验证的任务的仅限验证的使用案例部分。
解决方法
**注意:**如果在运行 AWS CLI 命令时收到错误,请确保您使用的是最新版本的 AWS CLI。
使用 AWS DMS 控制台创建仅限验证的任务
1. 打开 AWS DMS 控制台,然后从导航窗格中选择 Database migration tasks(数据库迁移任务)。
2. 选择 Create task(创建任务),然后在 Task configuration(任务配置)下输入任务的详细信息。
3. 在 Migration type(迁移类型)下,选择 Replicate data changes only(仅复制数据更改)。
4. 在 Task settings(任务设置)下,选择 JSON editor(JSON 编辑器),然后更改以下设置:
"EnableValidation": true, "ValidationOnly": true,
5. 对于 Migration Type(迁移类型),选择以下选项之一:
- 对于仅限完整加载验证的任务,选择 Migrate existing data(迁移现有数据)。
- 对于仅限 CDC 验证的任务,选择 Replicate data changes only(仅复制数据更改)。
6. 在 Migration task startup configuration(迁移任务启动配置)下,选择 Manually later(稍后手动)。这允许您在启动任务之前验证任务设置。
**注意:**默认 TargetTablePrepMode 设置为 DO_NOTHING。 如果修改了 TargetTablePrepMode,则将 TargetTablePrepMode 设置为 DO_NOTHING。
7. 选择 Create task(创建任务)。
使用 AWS CLI 创建仅限验证的任务
1. 对于 Linux 和 Windows 环境,运行 create-replication-task 命令来创建仅限验证的任务。您还可以指定 cdc-start-time,如果您需要从特定的时间戳开始验证,这可能会很有用。请参阅以下示例:
Linux:
aws dms create-replication-task --replication-task-identifier validation-only-task --replication-task-settings '{"FullLoadSettings":{"TargetTablePrepMode":"DO_NOTHING"},"ValidationSettings":{"EnableValidation":true,"ValidationOnly":true}}' --replication-instance-arn arn:aws:dms:us-east-1:xxxxxxxxxxx:rep:ABCDEFGH12346 --source-endpoint-arn arn:aws:dms:us-east-1:xxxxxxxxxxxx:endpoint:KSXGO6KATGOXBDZXKRV3QNIZV4 --target-endpoint-arn arn:aws:dms:us-east-1:xxxxxxxxxxxxxxx:endpoint:7SIYPBZTE2X3CZ7FPN7KKOAV6Q --migration-type cdc --cdc-start-time "2022-06-08T 00:12:12" --table-mappings file://Table-mappings.json
Windows:
aws dms create-replication-task --replication-task-identifier validation-only-task --replication-task-settings '{"FullLoadSettings":{"TargetTablePrepMode":"DO_NOTHING"},"ValidationSettings":{"EnableValidation":true,"ValidationOnly":true}}' --replication-instance-arn
2. 打开 AWS DMS 控制台,然后从导航窗格中选择 Database migration tasks(数据库迁移任务)。
3. 确认您使用 AWS CLI 创建的任务已创建。
4. 在 Overview details(概述详细信息)部分中,展开 Task settings (JSON)(任务设置(JSON)),然后确认这些设置已到位:
"EnableValidation": true, "ValidationOnly": true, "TargetTablePrepMode": "DO_NOTHING",
这些示例创建了仅限 CDC 验证的任务。对仅限完整加载验证的任务使用相同的设置,但在运行 create-replication-task 命令时将 --migration-type 更改为 full-load。
相关信息

相关内容
- AWS 官方已更新 2 个月前
- AWS 官方已更新 1 个月前
- AWS 官方已更新 2 年前
- AWS 官方已更新 1 年前