如何解决错误“线程‘main’ java.lang.RuntimeException 中的异常:将数据从 DynamoDB 移动到 S3 时,读取吞吐量不应小于 1”?

上次更新日期:2021 年 2 月 26 日

我创建了 AWS Data Pipeline 将数据从 Amazon DynamoDB 导出到 Amazon Simple Storage Service (Amazon S3)。当我尝试导出数据时,我收到了“线程‘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(保存)。


这篇文章对您有帮助吗?


您是否需要账单或技术支持?