MongoDB分片集群
一、MongoDB分片介绍 1.1 什么是MongoDB分片 对于数据库来讲,在大数据量和高吞吐量的场景下,会对单节点造成较大压力,大查询会将单机CPU耗尽,大数据量会对单机的存储压力较大,最终会耗尽系统的内存而将压力转移到磁盘IO上。MongoDB采用分片技术来将大型集合分割到不同服务器上,也就是水平扩展。 分片技术为应对高吞吐量与大数据量提供了方法,减少了每个分片需要存储的数据量和需要处理的请求数,因此,通过分片集群可以提高MongoDB的存储容量和吞吐量。 1.2 分片技术的优势 1、透明化 MongoDB自带mongos路由进程。通过mongos将客户端发来的请求准确无误的路由到集群中的一个或者一组服务器上,同时会把接收到的响应聚合起来发回到客户端。 2.高可用 MongoDB通过将副本集和分片集群结合使用,在确保数据实现分片的同时,也确保了各分片数据都有相应的备份,这样就可以确保当主服务器宕机时,其他的从库可以立即替换,继续工作。 3.易扩展 当系统需要更多的空间和资源的时候,MongoDB使我们可以按需方便的扩充系统容量。 组件 说明 Mongos 提供对外应用访问,所有操作均通过mongos执行。一般有多个mongos节点。数据迁移和数据自动平衡。 Config Server 存储集群所有节点、分片数据路由信息。默认需要配置3个Config