Amazon dynamodb dynamo db中唯一哈希键和范围键之间的比率
如果我选择散列键和范围键,使唯一散列键的数量非常少(最大值:1000),而有更多的唯一范围键,这是否有问题Amazon dynamodb dynamo db中唯一哈希键和范围键之间的比率,amazon-dynamodb,Amazon Dynamodb,如果我选择散列键和范围键,使唯一散列键的数量非常少(最大值:1000),而有更多的唯一范围键,这是否有问题 唯一散列键和范围键的数量之比是否会影响信息检索的性能 据我所知,这无关紧要。负荷分布取决于接入的“频率”,而不是“可能的组合”。如果您的访问是均匀分布在您正在使用的1000个密钥上的,那么就可以了-这意味着通过key1获取的概率应该与获取key10或key100的概率相似。在内部,我猜他们会把你的1000把钥匙分成3组,每个组“可能”由3台机器提供服务。您需要确保您的访问几乎是一致的,以便
唯一散列键和范围键的数量之比是否会影响信息检索的性能 据我所知,这无关紧要。负荷分布取决于接入的“频率”,而不是“可能的组合”。如果您的访问是均匀分布在您正在使用的1000个密钥上的,那么就可以了-这意味着通过key1获取的概率应该与获取key10或key100的概率相似。在内部,我猜他们会把你的1000把钥匙分成3组,每个组“可能”由3台机器提供服务。您需要确保您的访问几乎是一致的,以便所有3台计算机都能获得一致的负载共享。对于每个if:
您提到了最多1000个哈希键,但问题是最小值是多少。例如,如果只有10个散列键,那么您将很快达到每个键的吞吐量限制,并且实际上无法实现所提供的吞吐量 二,。您的访问将随机分布在散列键上
如果有少量的“热”键,那么有多少散列键并不重要。也就是说,如果您经常只读取或写入散列键的一小部分,那么您将达到存储这些键的节点的吞吐量限制 三,。您不需要扩展到极端级别
即使假设您有1000个不同的散列键,并且您的访问是随机分布在它们之间的,如果您需要扩展到极端级别,您最终将达到一个点,即每个散列键都位于一个单独的节点上。也就是说,如果您提供足够的吞吐量,使每个哈希键分配给一个单独的节点(即,您有1000多个节点),那么超出该级别的任何吞吐量都将无法实现,因为您将达到每个节点对每个键的限制
范围键与散列键的比率应该对get、扫描和查询性能几乎没有影响。 据我所知,每个散列键的范围键都有效地存储在某种索引中,这种索引可以很好地扩展。但是,请记住,给定哈希键的所有行都存储在同一个节点上,因此可能会出现给定哈希键的数据过多的情况。各国: 对于具有本地二级索引的表,项有一个限制 集合大小:对于每个不同的哈希键值,总大小 所有表和索引项的大小不能超过10 GB。取决于你的 项大小,这可能会限制每个哈希的范围键数 价值观
如果您对回答感到满意,您能将此标记为正确答案吗?