0

如果我有一个 DynamoDB 表,pk并且sk在哪里pk可以查询给定的表pk并获取给定类别中的所有项目,这与扫描仅包含来自所述类别的项目的稀疏二级索引有何不同?我知道 GSI 读/写单元与主表是分开的,但我想知道这样做是否会带来延迟或其他好处。

4

1 回答 1

1

AFAIK,理论上,它们之间不应该有任何性能差异。首先,主表和GSI都使用相同的底层存储节点,所以IO性能应该是一样的。其次,无论您查询主表还是扫描稀疏 GSI,您要检索的记录的分区键都是相同的,这意味着所有这些记录都位于同一个分区中(而不是分片)。

我可以想到在主表中进行查询的一些好处:

  1. 节省 GSI 的 RCU、WCU 和存储成本
  2. 您有能力进行一致的读取
于 2020-08-06T03:37:10.890 回答