首页 > 解决方案 > 将具有默认值的新属性添加到现有 dynamodb 表的最有效方法是什么

问题描述

我们已经有一个包含 100000 条记录的表,我们想为所有具有默认值的项目添加一个新属性。

CLI 或用.net、python 编写程序来进行批量更新?

标签: amazon-web-servicesamazon-dynamodb

解决方案


不幸的是,没有有效的方法来做你想做的事。您这样做的任何方式都首先需要找出所有记录的键(可能通过读取所有键),然后使用UpdateItem请求迭代所有这些键(不幸的是,没有批处理版本)以添加新的属性。

同样重要的是要注意,尽管该UpdateItem操作可能只会将一个小属性添加到一个可能很大的现有项目 - 您将支付整个项目的重写费用。您基本上会为重写整个数据集付费。

看到一个类似的问题,我在这里给出了更详细的答案:需要将 TTL 添加到 3bln+ 记录 ddb 表


推荐阅读