【问题标题】:Perform batch write in DynamoDB in Java使用 Java 在 DynamoDB 中执行批量写入
【发布时间】:2021-06-16 14:27:20
【问题描述】:

我想使用用 Java 编写的 AWS Lambda 将项目写入 DynamoDB。我使用以下代码一次向 DynamoDB 写入一条记录:

public void writeToDynamoDB() {
   AmazonDynamoDB client = AmazonDyanmoDBClientBuilder.defaultClient();
   Map<String, AttributeValue> itemValues = new HashMap<>();
   itemValues.put("partitionKey", new AttributeValue("123"));
   client.putItem("DynamoDBTable", itemValues);    
}

但事实证明,我需要批量写入记录。我该怎么做。我可以对此代码进行任何修改吗?

【问题讨论】:

标签: java amazon-web-services aws-lambda amazon-dynamodb


【解决方案1】:

如果您想使用 Java 执行 AWS 任务,请查看此处的 Java Developer V2 开发指南。

Developer guide - AWS SDK for Java 2.x

Amazon Java SDK 团队建议迁移到 V2。

亚马逊建议使用 AWS SDK for Java 2.x,这是对基于 Java 8+ 构建的 1.11.x 代码库的重大重写。 Java SDK 2.x 改进了一致性、易用性和强制执行的不变性。它还支持非阻塞 I/O,并且能够在运行时插入不同的 HTTP 实现。

现在要执行您想要的任务,请使用 DynamoDB API V2 和增强型客户端。你可以find information here

请参阅此示例,该示例演示如何使用增强型客户端将许多项目插入到 Amazon DynamoDB 表中。

https://github.com/awsdocs/aws-doc-sdk-examples/blob/master/javav2/example_code/dynamodb/src/main/java/com/example/dynamodb/EnhancedBatchWriteItems.java

您可以使用 Java Lambda 运行时 API 和 DynamoDB API 创建满足您要求的 Lambda 函数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-06
    • 1970-01-01
    • 2021-08-21
    • 2020-02-19
    • 2020-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多