MongoDB的auto-sharding功能是指mongodb通过mongos自动建立一个水平扩展的数据库集群系统,将数据库分表存储在sharding的各个节点上。

通过把Sharding和Replica Sets相结合,可以搭建一个分布式的,高可用性,自动水平扩展的集群。

要构建MongoDB Sharding Cluster,需要三种角色:


【MongoDB 之Mongos】
 

Shard Server: mongod 实例, 使用 Replica Sets,确保每个数据节点都具有备份、自动容错转移、自动恢复能力。用于存储实际的数据块,实际生产环境中一个shard server角色可由几台机器组个一个relica set承担,防止主机单点故障

Config Server: mongod 实例,使用 3 个配置服务器,确保元数据完整性(two-phase commit)。存储了整个 Cluster Metadata,其中包括 chunk 信息。

Route Server: mongos 实例,配合 LVS,实现负载平衡,提高接入性能(high performance)。前端路由,客户端由此接入,且让整个集群看上去像单一数据库,前端应用可以透明使用。

 

 

Mongodb的优点与不足
(1)Mongodb的不足之处
1、在集群分片中的数据分布不均匀
2、单机可靠性比较差
3、大数据量持续插入,写入性能有较大波动
4、磁盘空间占用比较大

(2)Mongodb的过人之处
1、无模式
2、查询与索引方式灵活,是最像SQL的Nosql
3、支持复制集、主备、互为主备、自动分片等特性

相关文章:

  • 2021-05-07
  • 2022-12-23
  • 2022-12-23
  • 2021-09-12
  • 2021-09-03
  • 2022-12-23
  • 2021-04-30
猜你喜欢
  • 2021-11-12
  • 2022-03-01
  • 2021-05-26
  • 2022-02-13
  • 2021-09-26
  • 2022-12-23
相关资源
相似解决方案