MongoDB Replica Sets和Auto Sharding配置简介

数据库 其他数据库 MongoDB
本文我们主要介绍了MongoDB Replica Sets和Auto Sharding配置的简单步骤,希望能够对您有所帮助。

MongoDB Replica SetsAuto Sharding配置的简单步骤是本文我们主要要介绍的内容,网上有很多教程把Replica Sets和Auto Sharding(或者是Sharding)写在了一起,对于初学者可能会觉得有些莫名,之所以这样做是因为,一个较好的Auto Sharding解决方案是将每个一shard(分片)定为一个Replica Sets(复制集)。

一个Replica Sets由若干个mongod instance组成,在这个集合中,所有的instance的数据相同,这使得即使有某一台机子当掉了,其它机子还是可以正常运行,而且这部分的控制是由Mongo自动完成的,因而尽可能地减少了因当机而产生的错误及人工处理的部分。

而Sharding是可以将庞大的数据库拆分为几个部分分别发放到每一个shard,一来降低了单一一台服务器的压力,同时通过减少潜在的损失比例来提高效率。也就是说一个基于Replica Sets的Auto Sharding结构,可以把一个完整而且庞大的数据库根据个人定制,拆分到若干个服务器集合,每个服务器集合中的服务器群又相互保持数据同步,所以除非一个服务器集合中的所有服务器都当掉了,否则某台或几台的当机对数据库的影响是微忽其微的。关于这两个部分,其实在Mongo的官方文档里有详细的说明,所以此文是以总结归纳为目的而写。

MongoDB Replica Sets和Auto Sharding配置简介

(图片来源:http://www.mongodb.org/display/DOCS/Sharding+Introduction)

1.一个完整的Auto Sharding功能的实现需要用到mongod和mongos,其中mongos作为真正的应用接口,数据的输入输出都应经过它。然后还需要一个config server,它是mongod,但它不会用来存储应用程序的数据库,通俗的来说而是存放了这整个结构的配置属性,mongos会从config server中读取配置来进行工作。最后是真正会存储数据的mongod们,它们按组分为若干个Replica Sets,用来存放mongos拆分下来的各个sharding。

2.配置推荐从配置各个Replica Sets开始,一个Replica Set包含若干个mongod instance,基础命令是:mongod --replSet %SETNAME%  --shardsvr,同属一个Replica Set的instance都使用同一个%SETNAME%,比如一个名为“set1”的Replica Set中有三台服务器,分别名为“server1”,“server2”,“server3”,则在这三台服务器上需要分别运行命令:

server1: mongod --replSet set1 --shardsvr

server2: mongod --replSet set1 --shardsvr

server2: mongod --replSet set1 --shardsvr

启动mongod包含多个参数,这个可以通过命令:mongod --help来查询,根据自己的需求修改,上面的为必要部分。

每个服务器都启动好mongod后,开始进行Replica Sets的初始化。

初始化的方法有多种,以下介绍比较方便的两种:

(1)initiate(cfg),其中cfg由用户编写;

(2)initiate->add;

3.然后是启动config serve;

4.最后是启动mongs;

以上就是MongoDB Replica Sets和Auto Sharding配置的简单过程,本文就介绍到这里,希望本次的介绍能够对您有所收获!

【编辑推荐】

  1. MySQL数据库丢失root密码后该如何补救?
  2. MySQL参数DELAY_KEY_WRITE的详细说明
  3. MySQL数据库TIMESTAMP设置默认值的灵活运用
  4. MySQL如何创建用户表并将其ID设置为自动增长列?
  5. MySQL数据库TIMESTAMP设置默认值的几个应用实例
责任编辑:赵鹏 来源: 博客园
相关推荐

2013-12-02 11:00:27

MongoDB

2012-07-27 10:39:16

MongoDB

2011-07-28 13:24:03

MongoDBAuto-shardi

2013-11-25 10:45:04

MongoDB

2013-11-28 09:48:55

MongoDBSharding分片

2014-03-28 09:35:11

MongoDBSharding

2011-07-28 16:06:13

MongoDBAutoShardinReplication

2009-09-17 13:08:07

NIS配置auto_dire

2013-07-21 18:04:22

ASIHttpRequiOS开发

2010-08-26 17:12:06

DHCP服务器

2014-05-13 11:44:07

亚马逊云游戏

2009-06-11 09:48:04

2021-10-21 09:00:00

机器学习技术工具

2010-04-21 18:17:01

Unix配置协议

2012-02-15 09:36:50

C++ 11

2009-08-20 10:23:35

Android开发环境

2017-04-26 08:51:36

MongoDB集群实战

2009-09-04 09:33:50

MongoDB

2017-06-13 13:53:21

2010-01-13 10:29:51

CentOS配置ssh
点赞
收藏

51CTO技术栈公众号