首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果我们使用分片,mongodb中的唯一索引

如果我们使用分片,mongodb中的唯一索引
EN

Stack Overflow用户
提问于 2012-12-07 13:58:26
回答 1查看 5.9K关注 0票数 4

在分片环境中,数据根据分片键的范围存储在不同的分片中。在我看来,在这种情况下,mongodb不能保证索引的唯一性(至少如果它不是分片键的话)。分片键可以使用唯一索引吗?除了分片键之外,我们还能对其他字段使用索引吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-07 14:41:46

您是对的,mongodb不能保证分片集群中索引的唯一性,因为每个分片都不能报告它是否包含要插入的键在其上下文中是唯一的。

这在documentation中有所涉及,在这种情况下有一个number of strategies

结果是,如果为分片键选择了这样一个键,那么您将需要您的应用层来强制分片键的唯一性。

我不是100%清楚你的第二个问题指的是什么。除了分片键之外,您还可以在集合上使用索引,这些索引可以用来提高查询的性能,但是任何不使用分片键的查询都将是分散/聚集的(因此命中每个分片)。当它们命中每个分片时的性能将取决于索引的好坏,这就是使用索引而不是分片键的好处。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13757712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档