amazonddynamoddb:对表配置的吞吐量进行编程更改是否有限制?

2024-10-01 04:48:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我按如下方式处理一大组文件:首先将它们全部下载到EC2实例中,然后运行一个脚本,该脚本按顺序处理每个文件并将其索引到DynamoDDB表中(表中的每一项对应于文件中的一行)。然后我下载下一批文件等

现在,我通过awsgui控制台调整配置的吞吐量,结果在下载阶段和索引阶段都是一样的。显然,这是次优的,因为在下载时我根本不与数据库对话,所以在这个阶段我所需的写吞吐量基本上是0。在

所以我想做的是在开始索引时以编程方式调整配置的吞吐量,然后在停止索引并开始下载时向下调整。在

在一个请求中我能增加多少写t/p有限制吗?例如,我可以把它从5改为120吗?如果没有,我如何计算请求数量和将t/p从值X调整到值Y所需的时间(其中X<;<;Y)?我需要做类似的计算来降低t/p吗?在

我使用的是Python boto。在

谢谢


Tags: 文件实例lt脚本数据库数量顺序编程
1条回答
网友
1楼 · 发布于 2024-10-01 04:48:25

当扩展时,您只能将写配置增加一倍,所以如果您是5,您可以增加到10,然后等待20-30秒,让它生效,然后再加倍到20,依此类推。你可以按你喜欢的比例缩小。在

根据AWS FAQ

Q: Is there any limit on how much I can change my provisioned throughput with a single request? Yes. Amazon DynamoDB allows you to change your provisioned throughput level by up to 100% with a single UpdateTable API call. If you wish to increase your throughput by more than 100%, you can simply call UpdateTable again.

例如,如果您的表配置了1000个写容量单元,则不能通过一个API调用将表更新到3000个,因为这超过了单个UpdateTable操作允许的最大更改。要将吞吐量从1000单位增加到3000单位的写入容量,只需调用UpdateTable将吞吐量提高一倍到2000,然后再次调用UpdateTable以达到3000次写入/秒。在

相关问题 更多 >