在 AWS 数据迁移服务中为 S3 创建源终端节点时,是否设置了 1000 个字符的限制来定义表结构



我想在 aws dms 中为 s3 存储桶创建一个端点,用于将数据从 s3 迁移到 redshift。以 JSON 格式定义表结构时,我收到字符限制设置为 1000 个字符的错误。是为此四处走动还是我做错了什么? 在 AWS dms 网站上共享的 JSON 模板也有 1000 多个字符。我正在考虑如果表结构超过 20 列,如何四处走动。

此外,如果有人为 sql 服务器创建了一个 dms 任务到 s3 到红移。我想了解启用复制时在 s3 存储桶中创建的更新文件如何作为更新的表或行加载到 redshift 中。

提前谢谢你。

我尝试删除空格和eol字符

{
"TableCount": "1",
"Tables": [
{
"TableName": "employee",
"TablePath": "hr/employee/",
"TableOwner": "hr",
"TableColumns": [
{
"ColumnName": "Id",
"ColumnType": "INT8",
"ColumnNullable": "false",
"ColumnIsPk": "true"
},
{
"ColumnName": "LastName",
"ColumnType": "STRING",
"ColumnLength": "20"
},
{
"ColumnName": "FirstName",
"ColumnType": "STRING",
"ColumnLength": "30"
},
{
"ColumnName": "HireDate",
"ColumnType": "DATETIME"
},
{
"ColumnName": "OfficeLocation",
"ColumnType": "STRING",
"ColumnLength": "20"
}
],
"TableColumnsTotal": "5"
}
]
}

错误:不得超过 1000 个字符

在 unix 系统 (EC2,..) 上使用tr -s " ".当数据具有选项卡时,请先使用expand -1

echo '{
"TableCount": "1",
"Tables": [
{
"TableName": "employee",
"TablePath": "hr/employee/",
"TableOwner": "hr",
"TableColumns": [
{
"ColumnName": "Id",
"ColumnType": "INT8",
"ColumnNullable": "false",
"ColumnIsPk": "true"
},
{
"ColumnName": "LastName",
"ColumnType": "STRING",
"ColumnLength": "20"
},
{
"ColumnName": "FirstName",
"ColumnType": "STRING",
"ColumnLength": "30"
},
{
"ColumnName": "HireDate",
"ColumnType": "DATETIME"
},
{
"ColumnName": "OfficeLocation",
"ColumnType": "STRING",
"ColumnLength": "20"
}
],
"TableColumnsTotal": "5"
}
]
}' | tr -s " "

最新更新