AWS DynamoDB - 分区密钥和密钥分片

问题描述 投票:0回答:1

我是Amazon DynamoDB的新手。我正在阅读文档,在这里清楚地显示一键只能分配给一个分区,但是一个分区可以有多个键。我的问题是:

让我们说我的partition1有两个键S1和S2。在达到10GB大小或3000 RCU或1000 WCU的阈值时,DynamoDB将创建新分区并在新分区中移动S2密钥,即partition1_0。

但是现在密钥分片将如何发生,因为两个分区都有单个密钥,即partition1具有S1而partition1_0具有S2,如果partition1再次突破阈值并且创建了新分区,我们可以期望两个分区中的密钥S1。

如果我的问题不明确,请告诉我。

amazon-web-services nosql amazon-dynamodb
1个回答
1
投票

答案实际上是在文档中,您将从DynamoDB中收到错误。虽然我认为当您拥有本地二级索引时,10gb限制只是一个问题,否则对数据量没有实际限制:

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/LSI.html#LSI.ItemCollections.SizeLimit

如果项目集合超过10 GB限制,DynamoDB将返回ItemCollectionSizeLimitExceededException,您将无法向项目集合添加更多项目或增加项目集合中项目的大小。 (仍然允许缩小项目集合大小的读取和写入操作。)您仍然可以将项目添加到其他项目集合中。

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html#limits-partition-sort-keys

排序键值

通常,对每个分区键值的不同排序键值的数量没有实际限制。

具有本地二级索引的表例外。使用本地二级索引时,项目集合大小存在限制:对于每个不同的分区键值,所有表和索引项的总大小不能超过10 GB。这可能会限制每个分区键值的排序键数量。有关更多信息,请参阅项目集合大小限制。

© www.soinside.com 2019 - 2024. All rights reserved.