问题:AWS是否提供API端点来访问数据库迁移任务的DMS映射rules
?
问题:我需要以编程方式检索数据库迁移任务的映射rules
,以确定复制任务在源表上是否具有filter-type
规则。此处和此处对输出进行了描述。从本质上讲,当从PostgreSQL中读取时,DMS迁移任务可能会出现问题,并且源过滤器应用于不是主键的列,如本文所述。
尝试的工作:在AWS DMS -> Database Migration Tasks -> <TaskName>
中,有一个用于Mapping rules
的选项卡。我已经检查了DatabaseMigrationServices的Boto3,并运行了describe_endpoint
和describe_replication_tasks
端点,但在结果输出中没有发现任何rules
。我想我已经用尽了互联网搜索结果,现在在这里问一个问题。
预期结果:
我正在寻找一个类似于下面的JSON输出。有可能以编程方式提取这些数据吗?如果是,如何?
{
"rules": [{
"rule-type": "selection",
"rule-id": "1",
"rule-name": "1",
"object-locator": {
"schema-name": "test",
"table-name": "employee"
},
"rule-action": "include",
"filters": [{
"filter-type": "source",
"column-name": "empid",
"filter-conditions": [{
"filter-operator": "gte",
"value": "100"
}]
}]
}]
}
您可以在lambda中尝试以下代码吗。如果你打印响应,你将无法看到表映射,但你可以在cloudwatch日志中看到
def lambda_handler(event, context):
dms = boto3.client('dms')
response = dms.describe_replication_tasks(
Filters=[
{
'Name': 'replication-task-id',
'Values': [
'test'
]
}
],
WithoutSettings=False)
table_mappings = response['ReplicationTasks'][0]['TableMappings']
return table_mappings