将数据从 DynamoDB 移至 S3 时,如何解决错误 "Exception in thread "main" java.lang.RuntimeException: Read throughput should not be less than 1"(线程 "main" java.lang.RuntimeException 异常:读取吞吐量不应小于1)?

1 分钟阅读
0

我创建了 AWS Data Pipeline 将数据从 Amazon DynamoDB 导出到 Amazon Simple Storage Service (Amazon S3)。当我尝试导出数据时,我收到了这个错误消息:"Exception in thread "main" java.lang.RuntimeException: Read throughput should not be less than 1"(线程 "main" java.lang.RuntimeException 异常:读取吞吐量不应小于1)。

解决方法

如果要创建新管道从 DynamoDB 表中导出数据,请使用将 DynamoDB 表导出到 S3 数据管道模板创建管道。有关创建管道的更多信息,请参阅第二部分:从 DynamoDB 导出数据

如果要使用现有管道将数据从 DynamoDB 导出到 S3,则必须为该管道使用最新的 EMR-DynamoDB 连接器。使用旧版本的 EMR-DynamoDB 连接器导出数据时,可能会出现错误。

请确保 DynamoDB 表的 Amazon EMR 版本为 5.24.0 或以上。只有使用 Amazon EMR 版本 5.24.0 或以上时,才支持将 DynamoDB 表配置为按需容量。有关更多信息,请参阅从 DynamoDB 导出数据 - 开始之前

要将现有管道更新为使用最新的 EMR-DynamoDB 连接器和 Amazon EMR 版本 5.24.0 或以上,请执行以下操作:

1.    打开 AWS Data Pipeline 控制台

2.    选择管道,然后选择 Actions(操作)。

3.    选择编辑

4.    在左侧窗格中选择 EmrActivity

5.    展开 Activities(活动)窗格,然后找到 EmrActivity 对象。

6.    在 Step(步骤)字段中,输入以下 JAR 名称:

s3://dynamodb-dpl-#{myDDBRegion}/emr-ddb-storage-handler/4.11.0/emr-dynamodb-tools-4.11.0-SNAPSHOT-jar-with-dependencies.jar

7.    在左侧窗格中选择 EmrCluster

8.    展开 Resources(资源)窗格。

9.    在 Release Label(版本标签)中,输入 emr-5.24.0 或任何更高的 EMR 版本。

10.    选择 Save(保存)。


相关信息

如何使用 Data Pipeline 将 DynamoDB 表备份到另一个账户中的 S3 存储桶?

AWS 官方
AWS 官方已更新 1 年前