首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mongodb中的主碎片

mongodb中的主碎片
EN

Stack Overflow用户
提问于 2016-08-09 00:50:13
回答 1查看 3.2K关注 0票数 5

我正在尝试浏览mongodb切分的文档,我对主碎片是如何分配的以及主碎片的含义有些困惑。

根据它的文档,

每个数据库都有一个主碎片,它保存数据库的所有非切分集合。主碎片与复制集中的主部件无关。

这是否意味着主碎片是第一次创建数据库的碎片中的碎片(或服务器集合)?

假设我有三个碎片s0,s1和s2。在每个碎片中,我有3个服务器

  • s0服务器1(主服务器)
  • s0服务器2(二级)
  • s0 -服务器3(二级)
  • s1 -服务器4(初级)
  • s1 -服务器5(二级)
  • s1 -服务器6(二级)
  • s2 -服务器7(初级)
  • s2 -服务器8(二级)
  • s2 -服务器9(二级)

现在,当我通过mongoclient和mongos创建一个新的数据库时。现在假设请求转到碎片1 (s1)。由于create是一种写操作,它将转到shard 1中的服务器4,因此s1由主碎片变成?

另一方面,如果请求已经遍历到s2碎片,那么服务器7将主要创建集合,然后s2将成为我的主碎片?

这个理解是正确的,还是我错了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-10 05:09:04

是的,你是对的!你也明白我的想法。

只要您不分割单个集合,集合必须有主位置,位于副本集之一。因此,把这些单独的碎片看作是单独的RS。因此,一个DB位于一个碎片,如果您在DB中碎片集合,集合是“平衡”到多个碎片。有了标签,你就可以决定藏品在哪里传播。正常的情况是把它均匀地撒到所有的碎片上。

您可以随时决定DB的主要位置是什么。创建之后,您可以“移动”它,当DB仍然是空的或相当小的时候,它是快速的操作。movePrimary

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

https://stackoverflow.com/questions/38840456

复制
相关文章

相似问题

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