我正在构建一个指向AWS dynamodb的spring boot微服务以进行数据库操作。我正在使用下面的库进行交互:因为这样的操作与CrudRepository一起正常工作,但是它对于大规模操作来说非常慢。对于dynamodb,我们是否有像jdbcTemplate.batchUpdate()这样的选项?
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-core</artifactId>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-dynamodb</artifactId>
</dependency>
<dependency>
<groupId>com.github.derjust</groupId>
<artifactId>spring-data-dynamodb</artifactId>
<version>4.5.0</version>
</dependency>
答案 0 :(得分:0)
batchSave
上的spring-data-dynamodb
使用AWS SDK DynamoDBMapper batchSave,它不会更新现有项目。
DynamoDBMapper.batchSave在内部调用AmazonDynamoDB.batchWriteItem(),它不支持更新现有项目。
DynamoDBMapper batchSave: -
将使用一个或多个调用给出的对象保存到 AmazonDynamoDB.batchWriteItem(BatchWriteItemRequest)API。没有版本 根据API的要求执行检查。
此方法忽略映射器上设置的任何SaveBehavior,并且始终 表现得就像指定了SaveBehavior.CLOBBER一样 AmazonDynamoDB.batchWriteItem()请求不支持更新 现有项目。