首页 > 解决方案 > DynamoDB 读写能力说明

问题描述

我想询问有关 DynamoDB 的读/写容量逻辑。我在这里查看了他们的文档https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ProvisionedThroughput.html 我还用谷歌搜索了它们与数据库中的项目的关系,但我不明白他们定义。

所以就我而言,

我有一个像这样的表,称为哈希键user_id和排序键flag_key

每个项目都是这样的 {user_id: 'user-1', flag_key: 'refresh_token', flag_value: 'some-random-refresh-token'}{user_id: 'user-1', flag_key: 'roles', flag_value: ['role-a', 'role-b']}

以及与上述类似的其他事情。

现在,如果我想查询 3 件事,例如refresh_token,roleslogin_history

我会查询 dynamoDB 3 次。

所以我的问题是,

DynamoDB 会为此向我收取 3 次读取容量吗?即使组合的项目小于 4KB?

标签: amazon-web-servicesamazon-dynamodb

解决方案


是的,如果您进行 3 个不同的查询,您将至少使用 3 个 RCU。

但是,由于您正在检索相同分区键的项目,因此您可以使用单个查询操作。只要您进行一次查询,它就会返回您需要的所有数据并且这些数据总共小于 4KB,您将只使用 1 个 RCU(读取容量单位)。


推荐阅读