1、mongo分片集群相关知识点
mongo集群介绍:https://www.cnblogs.com/clsn/p/8214345.html
分片键的选择:https://www.cnblogs.com/lijiaman/p/14289713.html
再结合官网确认一下相关版本的规定:https://docs.mongodb.com/manual/sharding/
2、设置分片键
在MongoDB4.2以及4.2之前,文档的分片字段只有一个,且是不可以修改的。从4.2版本开始,除非分片键是不可变的_id字段,否则你可以更新文档的分片字段。
MongoDB4.4版本中已经可以针对复合索引字段进行哈希分片。
将一个集合设成分片集合步骤:
2.1、 mongo集群必须是分片集群
一般mongo分片集群都是由mongos,各个分片复制集群组成。当外部业务直接连接到mongos服务器上,由mongos负责路由到指定分片上读取数据。
config Server: 存储集群的配置信息
mongod: 存储数据的节点。
chunk :对数据进行逻辑分区,逻辑块。每个mongod上可以存储多个chunk。在创建分片键时就设置了chunk个数,可以一定程度上避免频繁后续分片分裂及迁移。
Shard :基本就是mongod在集群里的名称,加一台机器就是加一个shard。每个shard上可以分布多个chunk。
2.2、设置对应集合的数据库支持分片
shell:
use dbname
db.adminCommand({ enablesharding:dbn