1. 程式人生 > >MongoDB學習之旅二十八:MongoDB 新增Shard Server

MongoDB學習之旅二十八:MongoDB 新增Shard Server

    1、啟動一個新Shard Server 程序

[[email protected] ~]# mkdir /data/shard/s2
[[email protected] ~]# /Apps/mongo/bin/mongod --shardsvr --port 20002 --dbpath /data/shard/s2
--fork --logpath /data/shard/log/s2.log --directoryperdb
all output going to: /data/shard/log/s2.log
forked process: 6772
    2、配置新Shard Server
[[email protected]
~]# /Apps/mongo/bin/mongo admin --port 40000 MongoDB shell version: 1.8.1 connecting to: 127.0.0.1:40000/admin > db.runCommand({ addshard:"localhost:20002" }) { "shardAdded" : "shard0002", "ok" : 1 } > printShardingStatus() --- Sharding Status --- sharding version: { "_id" : 1, "version" : 3 } shards: { "_id" : "shard0000", "host" : "localhost:20000" } { "_id" : "shard0001", "host" : "localhost:20001" } { "_id" : "shard0002", "host" : "localhost:20002" } --新增Shard Server databases: { "_id" : "admin", "partitioned" : false, "primary" : "config" } { "_id" : "test", "partitioned" : true, "primary" : "shard0000" } test.users chunks: shard0002 2 shard0000 21 shard0001 21 too many chunksn to print, use verbose if you want to force print test.users_2 chunks: shard0001 46 shard0002 1 shard0000 45 too many chunksn to print, use verbose if you want to force print
   3、 檢視分片表狀態,以驗證新Shard Server
> use test
switched to db test
> db.users_2.stats()
{
"sharded" : true,
"ns" : "test.users_2",
……
"shard0002" : { --新的Shard Server 已有資料
"ns" : "test.users_2",
"count" : 21848,
"size" : 2097408,
"avgObjSize" : 96,
"storageSize" : 2793472,
"numExtents" : 5,
"nindexes" : 1,
"lastExtentSize" : 2097152,
"paddingFactor" : 1,
"flags" : 1,
"totalIndexSize" : 1277952,
"indexSizes" : {
"_id_" : 1277952
},
"ok" : 1
}
},
"ok" : 1
}
>
    我們可以發現,當我們新增Shard Server 後資料自動分佈到了新Shard 上,這是由MongoDB內部自已實現的。

相關推薦

MongoDB學習MongoDB 新增Shard Server

    1、啟動一個新Shard Server 程序 [[email protected] ~]# mkdir /data/shard/s2 [[email protected] ~]# /Apps/mongo/bin/mongod --shardsvr

MongoDB學習MongoDB 移除Shard Server

    有些時候有於硬體資源有限,所以我們不得不進行一些回收工作,下面我們就要將剛剛啟用的Shard Server 回收,系統首先會將在這個即將被移除的Shard Server 上的資料先平均分配到其它的Shard Server 上,然後最終在將這個Shard Server

Python學習

expand red function encode tabs reduce repl nbsp 試圖 Python基礎知識(17):面向對象編程(Ⅱ) 獲取對象信息 在不知道對象信息的情況下,我們想要去獲取對象信息,可以使用以下方法 1、type (1)判斷對象類型 &

Java並發編程系列CompletionService

xtend cts edate strong ext [] com 喚醒 render CompletionService簡介 CompletionService與ExecutorService類似都可以用來執行線程池的任務,ExecutorService繼承了Execut

tensorflow學習筆記(collection tensorflow學習筆記(collection

tensorflow學習筆記(二十八):collection 2016年12月27日 11:53:06 閱讀數:11346 tensorflow collection tensorflow的collection提供一個

Python學習

Python基礎知識(11):高階特性 一、分片(切片)   通過索引來獲取一定範圍內的元素 #字串 s="Alice" s[0:4:2] 結果: 'Ai' #列表 l=[1,2,3,4,5,6] l[0:2] 結果: [1, 2] #元組 t=(1,2,3,"a","b","c"

性能測試環境部署Dubbo部署

密碼 pro 項目部 3.4 工作 zookeeper aps war 保存 Zookeeper部署 ZooKeeper是一個分布式的,開放源碼的分布式應用程序協調服務,是Google的Chubby一個開源的實現,是Hadoop和Hbase的重要組件。它是一個為分布式應用提

我的openwrt學習筆記()webserverlighttpd

Lighttpd是一個德國人領導的開源軟體,其根本的目的是提供一個專門針對高效能網站,安全、快速、相容性好並且靈活的web server環境。具有非常低的記憶體開銷,cpu佔用率低,效能好,以及豐富的模組等特點。 lighttpd 是眾多OpenSource輕量級的web server中較為優秀的一個。支

Android問題集錦You need to use a Theme.AppCompat theme (or descendant) with this activity.

錯誤描述為:java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.起因:我想在Manifest中設定我的activ

我的Go語言學習入門初體驗 Hello World

好吧,所有的程式設計師們都已經習慣了,學習任何一門語言,我們都會以Hello World例項開始我們的學習,我也不例外。先來一個簡單的例子 開啟編輯器 (可以用記事本,我已經習慣 Notepad++了)輸入以下內容 package main import

cas入門services管理控制檯

什麼是cas services管理控制檯? 想想一種情況,當你搭建好了一臺cas伺服器,大家知道了cas的訪問地址,那麼你能否有能力控制住哪些應用才能夠經過你搭建的cas伺服器 進行認證嗎?你可能會說,大家不會亂連,進行認證的。再想想一種情況,如果經過後臺監控,發現有一個應

Android實戰技巧啟動另一個App/apk中的Activity

Android提供了在一個App中啟動另一個App中的Activity的能力,這使我們的程式很容易就可以呼叫其他程式的功能,從而就豐富了我們App的功能。比如在微信中傳送一個位置資訊,對方可以點選這個位置資訊啟動騰訊地圖並導航。這個場景在現實中作用很大,尤其是朋

OpenCV學習findcontours以及drawcontours練習

1. void findContours1.1 概述void findContours//提取輪廓,用於提取影象的輪廓(InputOutputArray image,//輸入影象,必須是8位單通道影象,並且應該轉化成二值的OutputArrayOfArrays contour

Unity3D學習筆記(Editor

到你 box -a del eset tools 才會 resources 關於 Editor: 對編輯器進行一些拓展開發 關於繼承Mono類的擴展開發 特性: [特性]:聲明性的標簽(類,方法,結構體,變量) 特性只對字段聲明有效,後面必須接字段;多個特性,可以修

《C++primer(第五版)》學習路-第用於大型程式的工具

【宣告:版權所有,轉載請標明出處,請勿用於商業用途。聯絡信箱:libi[email protected]】 18.1 異常處理 1.異常處理機制允許程式中獨立開發的部分能夠在執行時就出現

Python學習筆記()多線程

oop 模擬 筆記 標準庫 函數 只需要 pre 開始 print 摘抄自:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431928238187

python學習筆記(異常處理

錯誤 fetchall nbsp 如果 info blog months api root 1 def calc(a,b): 2 res=a/b 3 return res 4 def main(): 5 money=input(‘輸入多少

Linux學習筆記()awk

awkhead -n2 test.txt|awk -F ‘:‘ ‘{print $1}‘ //文件的前兩行,以:分隔,打印第一段 head -n2 test.txt|awk -F ‘:‘ ‘{print $0}‘ //文件的前兩行,以:分隔,打印所有的內容($N就是第N段,0就是所有字段)

Hadoop學習路()MapReduce框架Combiner分區

類型 規則 比較 一個 學習 過程 key-value body 註意 對combiner的理解 combiner其實屬於優化方案,由於帶寬限制,應該盡量map和reduce之間的數據傳輸數量。它在Map端把同一個key的鍵值對合並在一起並計算,計算規則與reduce一致

我的機器學習(四)回歸與工程應用

多個 算法 ati function RR numpy pen 圖片 bsp 內容:線性回歸;邏輯回歸,應用場景。 一、線性回歸 有監督學習,根據學習樣本{x->y},學習一個映射f:X->Y(線性相關),輸出預測結果y_i。最簡單的例子:y=ax+b 重要組成