如何评估mongodb shard集群的冗余级别?

时间:2014-03-10 21:52:21

标签: mongodb

我是mongodb的新手,并尝试使用mongo db文档触摸base。

这是我看到的“每个碎片是副本集”这个词?这是否意味着,如果我有10个分片,那么每个数据集我将在分布式系统中有10个副本?如果是这种情况,那么重点是什么,可以将冗余级别调整为2,因为如果我有30个分片并且冗余级别设置为2已足以满足高可用性要求。或者我误解了一些mongo db术语?

2 个答案:

答案 0 :(得分:4)

更全面地阅读文档。我在这里回答我自己的问题。

http://docs.mongodb.org/manual/core/replica-set-members/

分片群集的mongo db的“冗余级别”是通过副本集。 副本集具有成员概念,成员数通常表示数据冗余的数量。冗余级别的最小值:副本集应至少有3个成员,但由于一个可以是不包含数据的仲裁者,因此它是2.最大值为12,如文档所述。

可以在此处配置副本集成员: http://docs.mongodb.org/manual/reference/replica-configuration/

答案 1 :(得分:1)

想象一下的最好方法是首先阅读副本集:http://docs.mongodb.org/manual/replication/

一旦你读到它,只是介绍,它将完全合理,但是,我现在将提供一些细节。

因此,MongoDB通过副本集提供HA(高可用性)。这些是mongod的一组,它们保存彼此的最新或延迟镜像(您可以让延迟的成员进行备份等)。

因此,副本集代表数据的冗余集群,并在集合的每个成员上提供数据副本。

在分片设置中设置的副本意味着每个分片实际上有望至少有3个服务器本身为分片所拥有的数据范围提供HA。