分布式mongodb集群

KrystleBord 8年前

来自: http://my.oschina.net/u/1433006/blog/631461


四个组件:mongos、config server、shard、replica set。

mongos,数据库集群请求的入口,所有的请求都通过mongos进行协调,不需要在应用程序添加 一个路由选择器,mongos负责把对应的数据请求转发到对应的shard服务器上。在生产环境通常有多mongos作为请求的入口,防止其中一个挂掉所有的mongodb请求都没有办法操作。

config server,配置服务器,存储所有数据库元信息(路由、分片)的配置。 mongos本身没有物理存储分片服务器和数据路由信息,只是缓存在内存里,配置服务器则实际存储这些数据。mongos第一次启动或者关掉重启就会从config server 加载配置信息,如果配置服务器信息变化会通知到所有的 mongos更新自己的状态,这样 mongos就能继续准确路由。在生产环境通常有多个config server配置服务器,因为它存储了分片路由的元数据。

shard,存储实际数据的分片。mongodb官网建议每个shard最好是一组Replica Set,这样可以更好实现每个Shard内部的auto-failover。