Redshift COPY 命令与 AWS 数据管道 RedshiftCopyActivity
Posted
技术标签:
【中文标题】Redshift COPY 命令与 AWS 数据管道 RedshiftCopyActivity【英文标题】:Redshift COPY command vs AWS datapipeline RedshiftCopyActivity 【发布时间】:2017-02-16 08:50:39 【问题描述】:我正在将大量数据(超过 1 亿个条目)从 dynamo DB 表复制到 Redshift,我需要根据一些标准过滤数据。我评估了几种实现此任务的方法:
使用 Redshift COPY 命令:http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/RedshiftforDynamoDB.html (http://docs.aws.amazon.com/redshift/latest/dg/t_Loading-data-from-dynamodb.html)。 这种方法的缺点: COPY 命令会影响源 dynamo db 表的吞吐量,不建议用于生产 DDB 表。 (读取比率调节已消耗的源 dynamo db 表的预置吞吐量百分比。建议将此比率设置为小于源表的平均未使用预置吞吐量的值。)
使用 AWS 数据管道: 仅使用 RedshiftCopyActivity :(http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-redshiftcopyactivity.html) 将数据直接从 dynamo db 复制到 redshift,然后在 redshift 上运行查询以根据条件进行过滤。
我找不到任何有关在使用 RedshiftCopyActivity 时源 dynamo db 表的吞吐量是否会受到影响的信息。有人可以提供任何相关信息吗?
另外,将数据从 dynamoDB 复制到 S3,然后从 S3 复制到 Redshift 是否比直接从 dynamo DB 复制到 Redshift 更有益?
【问题讨论】:
【参考方案1】:尽量减少触摸发电机。一般来说,我会说将它用于键值存储以外的任何东西都是一个坏主意。任何逻辑都应该发生在 Redshift 中。
【讨论】:
以上是关于Redshift COPY 命令与 AWS 数据管道 RedshiftCopyActivity的主要内容,如果未能解决你的问题,请参考以下文章
带有 iam_role 的 AWS Redshift COPY
AWS:从 dynamodb 到 redshift 的数据转换 [关闭]
AWS:通过使用 amazon-data-pipeline 将数据从 S3 传输到 Redshift 来实现除 COPY 之外的其他功能