MongoDB分片
来源:互联网 发布:西瓜刀多少钱一把淘宝 编辑:程序博客网 时间:2024/05/22 06:18
本文主要讲述MongoDB的分片以及MongDB如何配置分片服务,设置ChunkSize大小。
1 MongoDB分片概述
分片需要如下要素:
- 要有N个MongoD服务器存储数据做片节点
- 要有Config Server维护meta信息
- 要启动MongoS做路由
- 要设定好数据的分片规则(Config Server才能维护)
2 启动过程
2.1 启动两台 shard 实例
mongod --dbpath /home/m17/ --logpath /home/mlog/m17.log --fork --port 27017 --smallfilesmongod --dbpath /home/m18/ --logpath /home/mlog/m18.log --fork --port 27018 --smallfiles
2.2 启动 Config Server 服务器
mongod --dbpath /home/m20/ --logpath /home/mlog/m20.log --fork --port 27020 --configsvr
2.3 启动 MongoS 服务器
mongos --logpath /home/mlog/m30.log --port 30000 --configdb 192.168.21.130:27020 --fork
2.4 为 Config Server 添加分片节点
root@vv2x:/home/michael# mongo --port 30000MongoDB shell version: 3.2.0connecting to: 127.0.0.1:30000/testWelcome to the MongoDB shell.mongos> sh.addShard('192.168.21.130:27017');{ "shardAdded" : "shard0000", "ok" : 1 }mongos> sh.addShard('192.168.21.130:27018');{ "shardAdded" : "shard0001", "ok" : 1 }mongos> sh.stamongos> sh.status();--- Sharding Status --- sharding version: { "_id" : 1, "minCompatibleVersion" : 5, "currentVersion" : 6, "clusterId" : ObjectId("57198ba481bf26385e2a2bc1")} shards: { "_id" : "shard0000", "host" : "192.168.21.130:27017" } { "_id" : "shard0001", "host" : "192.168.21.130:27018" } active mongoses: "3.2.0" : 1 balancer: Currently enabled: yes Currently running: no Failed balancer rounds in last 5 attempts: 0 Migration Results for the last 24 hours: No recent migrations databases:
2.5 为 Config Server 设置分片规则
mongos> sh.enableSharding('shop'); #设置某个数据库开启分片{ "ok" : 1 }mongos> sh.shardCollection('shop.goods', {goods_id: 1});# 设置某个collection的分片规则,依据goods_id分片, goods_id为片键{ "collectionsharded" : "shop.goods", "ok" : 1 }
3 MongoDB chunk 的规则
- N篇文档形成一个块
Chunk
, 优先放在某个片上。 - 当这片上的chunk,与另一个片的chunk,区别比较大时,(>=3),会把本片上的chunk,移到另一个片上。
- 以chunk为单位,维护片之间的平衡。
3.1 更改 ChunkSize
# 登陆到MongoS服务器use config;db.settings.save({_id: 'chunksize', value: 1}); # 单位为M
阅读全文
0 0
- MongoDB 分片
- mongodb 分片
- mongodb分片
- Mongodb分片
- Mongodb分片
- MongoDB 分片
- MongoDB分片
- MongoDB分片
- mongodb分片
- mongodb分片
- MongoDB分片
- mongodb分片
- MongoDB分片
- mongodb分片
- MongoDB 分片
- MongoDB分片
- MongoDB 分片
- MongoDB 分片
- 数据结构学习记录-顺序队列
- PAT考试乙级1008(C语言实现)
- 阿里巴巴欲投资Uber对手Grab,加入共享出行融资战
- jquery.cxscroll.js 始终无法运行的坑
- Oracle数据库查看用户状态
- MongoDB分片
- java中equals方法的用法以及==的用法(转)
- Feature_Selection
- 第九周项目三——利用二叉树遍历思想解决问题
- Python代码Linux
- 计算后缀表达式、Java
- codeforces 858d(字典树)
- 用SQL实现 excel常用操作
- Edit Distance 解题报告