当前位置:Gxlcms > 数据库问题 > MongoDB 分片管理

MongoDB 分片管理

时间:2021-07-01 10:21:17 帮助过:2人阅读

db.collections.find()

{    "_id" : "test.foo",    "lastmodEpoch" : ObjectId("57dcd4899bd7f7111ec15f16"),    "lastmod" : ISODate("1970-02-19T17:02:47.296Z"),    "dropped" : false,    "key" : {        "_id" : 1
    },    "unique" : true}

技术分享

4,chunks 集合保存数据块信息,

ns:分片的集合,结构是:db_name.collection_name

min 和 max: 片键的最小值和最大值

shard:块所在的分片 

技术分享

db.chunks.find()

{    "_id" : "test.foo-_id_MinKey",    "lastmod" : Timestamp(1, 1),    "lastmodEpoch" : ObjectId("57dcd4899bd7f7111ec15f16"),    "ns" : "test.foo",    "min" : {        "_id" : 1
    },    "max" : {        "_id" : 3087
    },    "shard" : "rs0"}

技术分享

5,changelog集合记录分片集群的操作,包括chunk的拆分和迁移操作,Shard的增加或删除操作

what 字段:表示操作的类型,例如:multi-split表示chunk的拆分,

"what" : "addShard","what" : "shardCollection.start","what" : "shardCollection.end", 
"what" : "multi-split",

6,tags 记录shard的tag和对应的片键范围

技术分享

{    "_id" : { "ns" : "records.users", "min" : { "zipcode" : "10001" } },    "ns" : "records.users",    "min" : { "zipcode" : "10001" },    "max" : { "zipcode" : "10281" },    "tag" : "NYC"}

技术分享

7,settings 集合记录均衡器状态和chunk的大小,默认的chunk size是64MB。

{ "_id" : "chunksize", "value" : 64 }
{ "_id" : "balancer", "stopped" : false }

8,locks 集合记录分布锁(distributed lock),保证只有一个mongos 实例能够在分片集群中执行管理任务。

mongos在担任balancer时,会获取一个分布锁,并向config.locks中插入一条doc。

稿源:勤快学QKXue.NET

阅读完整版MongoDB 分片管理

 

MongoDB 分片管理

标签:

人气教程排行