DynamodbMapper batchSave是一个写入操作或多个写入操作

时间:2019-07-03 03:06:29

标签: amazon-web-services amazon-dynamodb

在AWS Dynamodb中,执行

  

DynamodbMapper.batchSave(记录)

操作被视为一次写操作还是等于记录数?

我在询问写入容量单位。一个写容量单位表示每秒写一次。因此,如果我有10个WCU,那么我可以使用一个batchSave调用保存100条记录,而仍然只使用一个WCU。

1 个答案:

答案 0 :(得分:1)

DynamoDBMapper在后台使用BatchWriteItem API来实现batchSave方法。从BatchWriteItem文档中:

  

每个指定的放置和删除请求都消耗相同数量的写入容量单位,无论是并行处理(批量保存)还是不并行处理(单独保存)。对不存在的项目执行删除操作将消耗一个写入容量单位。

如果要保存100个项目,则将至少使用 100个WCU。单个项目对项目中的每1kb数据(包括属性名称)使用1个WCU。 WCU的数量总是四舍五入到最接近的整数,并且同一请求中项目之间没有部分WCU的“共享”。

例如,如果您有10个项,每个项均为1.2 kb,那么写入所有项将消耗20 WCU。