在 DynamoDB 中,哪个更快?按 Id 或二级索引属性查询?
In DynamoDB, which is faster? Querying by Id or by a secondary index attribute?
我有一个 DynamoDB table,我需要在其中查询两个不同的属性,有时是一个,有时是另一个,但绝不会同时查询两个。
假设我有属性A和属性B,其他属性在这里无关紧要。
我正在考虑设计这个 table,哈希键是属性 A,GSI 是属性 B。
这样我总是执行 query
而不是 scan
.
现在我想到一个问题,在属性 A(即 Id)或属性 B (GSI) 上哪个查询更快?
如果有一些不同,我可以切换,让 B 作为 Id,让 A 作为 GSI。
谢谢
GSI 是一个实际的 DynamoDB table,复制了所有主要 table 数据。
如果您只 project 需要的属性,效率会更高。
考虑到散列键不是唯一的,这可能会降低效率,您最终可能会迭代这些结果以找到所需的结果。
我有一个 DynamoDB table,我需要在其中查询两个不同的属性,有时是一个,有时是另一个,但绝不会同时查询两个。
假设我有属性A和属性B,其他属性在这里无关紧要。
我正在考虑设计这个 table,哈希键是属性 A,GSI 是属性 B。
这样我总是执行 query
而不是 scan
.
现在我想到一个问题,在属性 A(即 Id)或属性 B (GSI) 上哪个查询更快?
如果有一些不同,我可以切换,让 B 作为 Id,让 A 作为 GSI。
谢谢
GSI 是一个实际的 DynamoDB table,复制了所有主要 table 数据。
如果您只 project 需要的属性,效率会更高。
考虑到散列键不是唯一的,这可能会降低效率,您最终可能会迭代这些结果以找到所需的结果。