mongo 3.4分片集群系列之六:详解配置数据库
这个系列大致想跟大家分享以下篇章:
1、mongo 3.4分片集群系列之一:浅谈分片集群
2、mongo 3.4分片集群系列之二:搭建分片集群--哈希分片
3、mongo 3.4分片集群系列之三:搭建分片集群--哈希分片 + 安全
4、mongo 3.4分片集群系列之四:搭建分片集群--哈希分片 + 安全 + 区域
5、mongo 3.4分片集群系列之五:详解平衡器
6、mongo 3.4分片集群系列之六:详解配置数据库
7、mongo 3.4分片集群系列之七:配置数据库管理
8、mongo 3.4分片集群系列之八:分片管理
这篇为理论篇。
配置数据库主要用于内部使用,并且在正常操作期间,您不应手动插入或存储数据。
以下将介绍config数据库的集合(这个是在mongodb 3.4版本,不保证其他版本也是这样。只能说作参考)
1、 Actionlog
2、 Changelog
用于存储每个改变分片集合的元数据的文档。
changelog集合中的每个文档包含以下字段:
_id 值是: <hostname>-<timestamp>-<increment>。
server 保存此数据的服务器的主机名。
clientAddr 一个包含客户端地址的字符串,一个初始化此更改的mongos 实例。
time 反映更改发生时间的ISODate时间戳。
what 反映记录的变化类型。可能的值是:
dropCollection dropCollection.start dropDatabase dropDatabase.start moveChunk.start moveChunk.commit split multi-splitns 发生更改的命名空间。
Details 包含有关变化的更多细节。details 文档的结构取决于变化的类型。
3、 Chunks
存储在集群中每个块的信息
_id 值是: <块所属的集合的命名空间>-<分片键>-<块范围最小值>
ns 块所属的集合的命名空间
min和max 描述了块的存储值的范围
shard 标识集群中“拥有”块的分片
4、 Collections
存储在集群中的每个分片集合的信息
_id 值是: <集合的命名空间>
Lastmod 最后修改时间
Dropped 是否drop该集合
Key 分片键
Unique 是否唯一
5、 Databases
存储集群中每个数据库的文档,并跟踪数据库是否已启用分片。
_id 数据库名称
Partitioned 是否已分片
Primary 分片后,主分片的名称
6、 Lockpings
跟踪分片集群中的活动组件。
7、 Locks
存储分布式锁
_id 分布式锁作用的对象
Who 启用该分布式锁的客户端或是内部程序
Process 启用该分布式锁的进程
When 启用该分布式锁的时间
Why 启用该分布式锁的原因
8、 Migrations
9、 Mongos
存储与集群关联的 mongos实例的每个文档。mongos实例每隔30秒向集群的所有成员发送ping,以便集群可以验证 mongos是否处于活动状态。
_id 主机名:端口
Ping 显示最后一次ping的时间
Up 报告最后一次ping 的正常运行时间
mongoVersion 运行mongos的版本
10、 Settings
平衡器的设置
11、 Shards
一个文档代表了集群中的一个分片
_id 分片名称
Host 主机名;如果分片是副本集,则显示副本集的名称,然后显示斜杠,然后以副本集的每个成员的主机名的逗号分隔列表
Tags 保存该分片分配到的区域的数组
12、 Tags
保存集群中每个区域范围的信息
_id 包括集合的命名空间,区域的最小值
ns 集合的命名空间
min 区域的最小值
max 区域的最大值
Tag 区域的名称
13、 Version
保存当前的元数据版本号。此集合仅包含一个文档。
--------------------------------------- over ------------------------------------------------------
以上资料,大部分是参考官网的资料,在此表示感谢。
https://docs.mongodb.com/manual/reference/config-database/
上一篇: 6.C#知识点:反射
下一篇: C++实现下载的代码的方法