什么是复制集

'多台','保存了相同数据' 的MongoDB服务器组成

复制集解决的问题

  • 高可用性, 服务器宕机不会影响我们继续使用
  • 数据安全性,服务器损坏数据不会丢失

复制集不能解决的问题

  • 服务器容量的问题

我们都知道一台服务器的容量是有上限的,所以我们只能通过增加服务器的台数来提升容量。
复制集虽然是由多台电脑组成的, 但是由于多台电脑保存的数据都是一样的, 所以在复制集中虽然电脑增多了, 但是容量并没有增加,所以复制集是不能解决服务器容量问题的。

MongoDB 中如何增加服务器容量

?> 通过 '分片' 来实现

什么是分片

  • 分片就是将数据库集合中的数据拆分成多份, 分布式的保存到多台电脑上
  • 这样不同的电脑保存不同的数据, 就大大的提升了服务器的容量

!> 并不是数据库所有的集合都需要使用分片, 对于那些不使用分片的集合会统一保存到主分片中, 默认每个数据库都有一个主分片, 保存那些不需要分片的集合数据, 在创建数据库的时候, 系统会自动选择存储内容最少的分片作为主分片。