发布于 2015-06-22 04:00:09 | 391 次阅读 | 评论: 0 | 来源: 网络整理

分片

分片存储在多台机器上的数据记录的过程,它是MongoDB的方法来满足数据增长的需求。一台机器上的大小的数据的增加,可能并不足够来存储数据,也不能提供可接受的读取和写入通过。分片解决问题的水平缩放。通过分片,你添加更多的机器支持数据增长的读取和写入操作需求。

为什么要分片?

  • 复制所有写转到掌握节点

  • 延时敏感的查询还是到主节点

  • 单副本集有12个节点的限制

  • 内存不能足够大,当活动数据集很大

  • 本地磁盘不够大

  • 垂直缩放太贵

MongoDB分片

下面给出的图显示了在MongoDB中使用分片分片集群。

在上面给出的图中,有三个主要组成部分,这说明如下:

  • 碎片: 碎片被用来存储数据。它们提供了高可用性和数据的一致性。在生产环境中,每个碎片是一个单独的副本集。

  • 配置服务器: 配置服务器集群的元数据存储。该数据包含集群的数据碎片的映射。查询路由器使用这个元数据,操作具体的碎片。在生产环境中,有整整3分片集群配置服务器。

  • 查询路由: 查询路由基本上是Mongos实例,客户端应用程序界面和直接操作相应的碎片。查询路由过程目标操作的碎片,然后将结果返回到客户端。分片集群可以包含多个查询路由来划分客户端请求负载。客户端发送请求到一个查询路由。一般分片集群有许多查询路由。

最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务