Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个 DynamoDB 表,我需要在其中查询两个不同的属性,有时是一个,有时是另一个,但从不同时查询。
假设我有一个属性 A 和属性 B,其他属性在这里无关紧要。
我正在考虑设计这个表,其中哈希键是属性 A,GSI 是属性 B。这样我总是执行query而不是scan.
query
scan
现在我想到一个问题,在属性 A(即 Id)或属性 B (GSI) 上哪个查询更快?
如果有一些差异,我可以切换,让 B 作为 Id,让 A 作为 GSI。
谢谢
GSI 是一个实际的 DynamoDB 表,其中复制了所有主表数据。
如果您只投影您需要的属性,它会更有效。
考虑到哈希键不是唯一的,它可能效率较低,并且您最终可能会迭代这些结果以找到所需的结果。