MongoDB的部署方式

MongoDB的部署方式


这篇博客将简单介绍MongoDB的三种部署方式:单一节点、复制集和分片集群。这只是一个简介,不涉及具体的配置步骤或底层的原理。

单一节点(Single Node):

顾名思义,这种部署方式只含有一个mongod实例。这种部署方式最简单,适用于MongoDB的学习和开发。但这种方式里数据没有备份,一旦该节点出现故障,很难快速切换到其他节点,如果数据文件损坏可能会丢失数据,在生产环境中不应该使用这种部署方式。

上一篇博客(http://blog.csdn.net/u011235983/article/details/9302933)中介绍的启动MongoDB的例子就是以这种方式启动的。



复制集(Replica Set):

http://docs.mongodb.org/manual/core/replication-introduction/


又叫副本集,用于把数据同步到不同的服务器上。如图所示,一个复制集由一个主节点(Primary)、若干个从节点(Secondary)、零个或一个仲裁节点(Arbiter)组成。


通过将数据从主节点备份到多个从节点上,复制集保证了数据库不受单点故障的影响,增加了系统的可靠性。在主节点发生故障后,能快速地切换到从节点上,从而保障业务不会被中断。复制集实现了对数据的容灾备份,在生产环境中应该使用这种部署。


一个复制集中只能有一个主节点,所有的写操作都写到主节点上,各个从节点会从主节点上复制数据。仲裁节点上没有数据,它只在需要选举主节点时和其他有投票权的节点一样参与投票。

注:主节点可能被降级从节点,从节点可能会升级成主节点;而仲裁节点永远只能作为仲裁节点,不能切换成主节点或者从节点。



分片集群(Sharded Cluster):

http://docs.mongodb.org/manual/core/sharding-introduction/


分片集群将数据分布到多台服务器上,可以用这种部署方式来存储大数据并提高系统的读写性能。

如图所示,一个分片集群由一个或三个配置服务器(Config Server)、一个或多个路由(MongoS)和一个或多个分片(Shard)组成。



分片负责存储数据。每个分片可以是单一节点,也可以是复制集。在生产环境中,每个分片都该使用复制集。

路由是应用程序和分片间的接口,将读写操作转发给对应的分片,并将结果返回给客户端。

配置服务器用于存储集群的元数据,包括数据库的数据集和分片的对应关系。在生产环境中,应该使用三个配置服务器。

注:这三个配置服务器并不是一个复制集,他们之间不会自动地同步数据。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值