mongodb分片(七)
1.插入负载技术分片架构图

2.片键的概念和用处
看下面这个普通的集合和分片后的结果

3.什么时候用到分片呢?
3.1机器的磁盘空间不足
3.2单个的mongoDB服务器已经不能满足大量的插入操作
3.3想通过把大数据放到内存中来提高性能
4.分片步骤
4.1创建一个配置服务器
4.2创建路由服务器,并且连接配置服务器
路由器是调用mongos命令
4.3添加2个分片数据库
8081和8082
4.5利用路由为集群添加分片(允许本地访问)
db.runCommand({addshard:"127.0.0.1:8081",allowLocal:true})
db.runCommand({addshard:"127.0.0.1:8081",allowLocal:true})
切记之前不能使用任何数据库语句

4.6打开数据分片功能,为数据库foobar打开分片功能
db.runCommand({"enablesharding":"foobar"})

4.7对集合进行分片
db.runCommand({"shardcollection":"foobar.bar","key":{"_id":1}})

4.8利用大数据量进行测试 (800000条)
5.查看配置库对于分片服务器的配置存储
db.printShardingStatus()
6.查看集群对bar的自动分片机制配置信息
mongos> db.shards.find()
{ "_id" : "shard0000", "host" : "127.0.0.1:8081" }
{ "_id" : "shard0001", "host" : "127.0.0.1:8082" }
7.保险起见的配置服务器集群

8.分片与副本集一起使用


function add(){
var i = 0;
for(;i<200000;i++){
db.bar.insert({"age":i+10,"name":"jim"})
}
}
function add2(){
var i = 0;
for(;i<200000;i++){
db.bar.insert({"age":12,"name":"tom"+i})
}
}
function add3(){
var i = 0;
for(;i<200000;i++){
db.bar.insert({"age":12,"name":"lili"+i})
}
}
//查看状态
db.printShardingStatus()
mongod --config 分片数据库_01.conf
dbpath = D:\sortware\mongod\03\8081
port = 8081
bind_ip = 127.0.0.1
mongo 127.0.0.1:8081/admin
mongod --config 分片数据库_02.conf
dbpath = D:\sortware\mongod\03\8082
port = 8082
bind_ip = 127.0.0.1
mongo 127.0.0.1:8082/admin
mongos --port 1000 --configdb 127.0.0.1:2000
mongo 127.0.0.1:1000/admin
mongod --config 配置服务器.conf
dbpath = D:\sortware\mongod\03\config
port = 2000
bind_ip = 127.0.0.1

mongod --config 分片数据库_01.conf
dbpath = D:\software\MongoDBDATA\08\0801
port = 8081
bind_ip = 127.0.0.1
mongo 127.0.0.1:8081/admin
mongod --config 分片数据库_02.conf
dbpath = D:\software\MongoDBDATA\08\8082
port = 8082
bind_ip = 127.0.0.1
mongo 127.0.0.1:8082/admin
mongos --port 1000 --configdb 127.0.0.1:2000
mongo 127.0.0.1:1000/admin
mongod --config 配置服务器.conf
dbpath = D:\software\MongoDBDATA\08\config
port = 2000
bind_ip = 127.0.0.1
mongodb分片(七)的更多相关文章
- MongoDB 分片的原理、搭建、应用
一.概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程.将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处理更大的负载.基本思想就是将集合切成小块,这 ...
- MongoDB 分片的原理、搭建、应用 !
MongoDB 分片的原理.搭建.应用 一.概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程.将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处 ...
- 009.MongoDB分片群集部署
一 前期准备 1.1 组件说明 MongoDB分片群集包含以下组件: shard:每个分片是分片数据的子集.从MongoDB 3.6开始,必须将分片部署为副本集. mongos:mongos充当查询路 ...
- MongoDB 分片的原理、搭建、应用 (转)
一.概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程.将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处理更大的负载.基本思想就是将集合切成小块,这 ...
- MongoDB分片集群-Sharded Cluster
分片概念 分片(sharding)是一种跨多台机器分布数据的方法, MongoDB使用分片来支持具有非常大的数据集和高吞吐量操作的部署. 换句话说:分片(sharding)是指将数据拆分,将其分散存在 ...
- MongoDB 分片管理(不定时更新)
背景: 通过上一篇的 MongoDB 分片的原理.搭建.应用 大致了解了MongoDB分片的安装和一些基本的使用情况,现在来说明下如何管理和优化MongoDB分片的使用. 知识点: 1) 分片的配置和 ...
- MongoDB分片简单实例
分片 在Mongodb里面存在另一种集群,就是分片技术,可以满足MongoDB数据量大量增长的需求. 当MongoDB存储海量的数据时,一台机器可能不足以存储数据也足以提供可接受的读写吞吐量.这时,我 ...
- (转)MongoDB分片实战 集群搭建
环境准备 Linux环境 主机 OS 备注 192.168.32.13 CentOS6.3 64位 普通PC 192.168.71.43 CentOS6.2 64位 服务器,NUMA CPU架构 Mo ...
- 搭建mongodb分片
搭建mongodb分片 http://gong1208.iteye.com/blog/1622078 Sharding分片概念 这是一种将海量的数据水平扩展的数据库集群系统,数据分表存储在shardi ...
- mongodb分片
在系统早期,数据量还小的时候不会引起太大的问题,但是随着数据量持续增多,后续迟早会出现一台机器硬件瓶颈问题的.而mongodb主打的就是海量数据架构,他不能解决海量数据怎么行!不行!“分片”就用这个来 ...
随机推荐
- hiho1602本质不同的回文子串的数量
给定一个字符串S,请统计S的所有子串中,有多少个本质不同的回文字符串? 注意如果两个位置不同的子串满足长度相同且对应字符也都相同,则认为这两个子串本质上是相同的. Input 一个只包含小写字母的字符 ...
- js数组简单总结
1.创建数组var array = new Array();var array = new Array(size);//指定数组的长度var array = new Array(item1,item2 ...
- css table 布局 与 JavaScript 指定区域打印功能
<!DOCTYPE html> <html lang="en"><head> <meta http-equiv="conte ...
- 开始创建一个 Vue 项目
开始创建一个 Vue 项目 安装 nodejs 略 安装 npm 默认安装时自带了 npm 安装 cnpm 为了更快的下载组件,使用cnpm,cnpm 是淘宝前端的镜像. 使用 npm 安装 cnpm ...
- Microsoft Visual Studio小技巧
main函数调试参数: Project -> Properties -> Configuration Properties -> Debugging 在Command Argumen ...
- video4linux(v4l)使用摄像头的实例基础教程与体会(转)
1. video4linux基础相关 1.1 v4l的介绍与一些基础知识的介绍 I.首先说明一下video4linux(v4l). 它是一些视频系统.视频软件.音频软 ...
- (转)Linux查看CPU,硬盘,内存的大小
分类: linux(21) 在Linux的桌面版本中,查看这些东西的确很方便,有图形化的工具可以使用.但是在Linux服务器版上,或者远程ssh连接的时候,就没有图形化的界面可以操作了.此 ...
- SVN checkout 出的项目在PHPstorm中打开没有subversion(SVN)选项按钮怎么办?
对于svn add 命令的批量操作,为了操作简便还是习惯在IDE中完成,有时候新checkout出的项目,在PHPstorm中右键菜单中没有 Subversion 按钮,操作如下: 点击VCS按钮,然 ...
- MFC消息循环
MFC消息循环 MFC应用程序中处理消息的顺序 1.AfxWndProc() 该函数负责接收消息,找到消息所属的CWnd对象,然后调用AfxCallWndProc. 2.AfxCallWndProc ...
- Java-Runoob-面向对象:Java 包(Package)
ylbtech-Java-Runoob-面向对象:Java 包(Package) 1.返回顶部 1. Java 包(package) 为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间. ...