【MongoDB】在windows平台mongodb切片集群(三)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了【MongoDB】在windows平台mongodb切片集群(三),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2846字,纯文字阅读大概需要5分钟。
内容图文
在过去的两年我们博客详细阐述了零碎工作集群和打造过程。在这篇博客中,我们主要分析测试结果一起支离破碎集群。
首先来看看碎片集群的每个状态。你可以看出来复制集A和B都是正常的:
一、开启分片集合
开启一个数据库上的分片。这是对不论什么集合进行分片的先决条件。 如果測试数据库为slidetest.
分片集合定义注意:它看起来和索引定义有几分相似之处,尤其是有那个unique键。
在对一个空集合进行分片时候。
能够直接连上分片。执行
getIndexs() 进行验证。能够登陆到 3000 进行查看。
二、写入分片集群
一旦完毕集合的分片,分片集群就准备就绪了。如今能够向集群写入数据。数据将分布到各个分片上。
在4000上初始化数据:
for(var i = 0; i < 200; i++){db.spreadsheets.insert({"filename": "sheet-"+i,"updatedate": new Date(),"username":"albertshao","data":"abcde"*1000 })}
查看结果:
接下来我们检查整个块发生了什么,能够看到有两块。而且他们的最大值不一样。
备注:作为BSON类型的边界。$minKey和$maxkey经常使用于比較操作之中。
$minkey总是小雨全部BSON类型。而$maxKey总是大于全部BSON类型。
。
MongoDB使用这两个类型来比較块的端点
继续插入数据,如果插入20万条记录,
mongos> sh.status() --- Sharding Status --- sharding version: { "_id" : 1, "version" : 4, "minCompatibleVersion" : 4, "currentVersion" : 5, "clusterId" : ObjectId("545d9af5340aec0c2272afda") } shards: { "_id" : "shard-a", "host" : "shard-a/WIN--20141018KO:3000,WIN--20141018KO:3001" } { "_id" : "shard-b", "host" : "shard-b/WIN--20141018KO:30100,WIN--20141018KO:30101" } databases: { "_id" : "admin", "partitioned" : false, "primary" : "config" } { "_id" : "slidetest", "partitioned" : true, "primary" : "shard-a" } slidetest.spreadsheets shard key: { "username" : 1, "_id" : 1 } chunks: shard-b 1 shard-a 2 { "username" : { "$minKey" : 1 }, "_id" : { "$minKey" : 1 } } -->> { "username" : "albertshao", "_id" : ObjectId("545df80537216b1577de0251") } on : shard-b Timestamp(2, 0) { "username" : "albertshao", "_id" : ObjectId("545df80537216b1577de0251") } -->> { "username" : "albertshao", "_id" : ObjectId("545e062437216b1577de1802") } on : shard-a Timestamp(2, 2) { "username" : "albertshao", "_id" : ObjectId("545e062437216b1577de1802") } -->> { "username" : { "$maxKey" : 1 }, "_id" : { "$maxKey" : 1 } } on : shard-a Timestamp(2, 3) mongos>
同一时候也能够看的出上面总有3块。当中shard-a有两块,shard-b有一块。
我们通过changelog能够看到数据库的迁移:
mongos> db.changelog.count({what:"split"}) 2 mongos> db.changelog.count({what:"moveChunk.commit"}).count() 2014-11-08T20:12:09.618+0800 TypeError: Object 1 has no method 'count' mongos> db.changelog.find({what:"moveChunk.commit"}).count() 1 mongos> db.changelog.find({what:"moveChunk.commit"}) { "_id" : "WIN--20141018KO-2014-11-08T11:01:40-545df8141603dfc967d0fdcd", "server" : "WIN--20141018KO", "clientAddr" : "127.0.0.1:50644", "time" : ISODate("2014-11-08T11:01:40.826Z"), "what" : "moveChunk.commit", "ns" : "slidetest.spreadsheets", "details" : { "min" : { "username" : { "$minKey" : 1 }, "_id" : { "$minKey" : 1 } }, "max" : { "username" : "albertshao", "_id" : ObjectId("545df80537216b1577de0251") }, "from" : "shard-a", "to" : "shard-b", "cloned" : NumberLong(0), "clonedBytes" : NumberLong(0), "catchup" : NumberLong(0), "steady" : NumberLong(0) } } mongos>
版权声明:本文博客原创文章。博客,未经同意,不得转载。
内容总结
以上是互联网集市为您收集整理的【MongoDB】在windows平台mongodb切片集群(三)全部内容,希望文章能够帮你解决【MongoDB】在windows平台mongodb切片集群(三)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。