0

我正在使用AWS Data Pipelines将 SQL 数据复制到 AWS S3 中的 CSV 文件。一些数据在字符串引号之间有逗号,例如:

{"id":123455,"user":"some,user" .... }

在将此 CSV 数据导入 DynamoDB 时,它将逗号作为字段值的结尾。这样会导致错误,因为映射中给出的数据与我们提供的模式不匹配。

我的解决方案是 - 在将数据从 SQL 复制到 S3 存储桶时 - 用;(分号)分隔我们的 CSV 字段。这样,引号内的值将被视为一个。数据看起来像(注意逗号后引号字符串中的空格):

{“身份证”:12345;“用户”:“一些,用户”;....}

我的堆栈如下所示:

  - database_to_s3:
      name: data-to-s3
      description: Dumps data to s3.
      dbRef: xxx
      selectQuery: >
        select * FROM USER;
      s3Url: '#{myS3Bucket}/xxxx-xxx/'
      format: csv

有什么方法可以使用分隔符来分隔带有;(分号)的字段?

谢谢!

4

1 回答 1

0

尝试使用 AWS Glue,您可以在其中整理数据,然后再插入 dynamoDB。

于 2021-12-11T14:26:10.270 回答