1. 程式人生 > >淺談MongoDB資料庫分散式儲存管理

淺談MongoDB資料庫分散式儲存管理

MongoDB資料庫分散式儲存也叫分片管理。是將資料庫裡面儲存的資料分散儲存在不同的機器上面。MongoDB分片的基本思想就是將集合切分成小塊。這些塊分散到若干片裡面,每個片只負責總資料的一部分。應用程式不必知道哪片對應哪些資料,甚至不需要知道資料已經被拆分了,所以在分片之前要執行一個路由程序,該程序名為mongos。monogs用來發送請求。

設定分片的時候,還需要設定一個片鍵(shard key)。隨著新增或者刪除片,MongoDB會重新平衡資料,使每片的流量都比較均衡,資料量也在合理範圍內。

(1).首先先建立三個不同的節點,為了模擬不同的機器,我們把三個節點放到不同的盤裡面,併為其分配一個埠號。例如我在本機的c盤,d盤,e盤上面分別建立了三個不同的節點分別是node1111(埠號也是1111),node2222(埠號也是2222),node3333(埠號也是3333),接下里就是啟動這三個節點,截圖如下:

(2)第二步是建立MongoDB的配置資訊的節點,命名為configdb,其埠號4444,並且啟動它,截圖如下:

(3)第三步是進入到mongos程序裡面(埠號是5555),因為mongos屬於一個程序,所以不用到特定的路徑下開啟,可以直接開啟就好。是mongos程序和configdb配置資訊節點連線起來,截圖如下:

(4)以管理員身份進入到客戶端裡面,截圖如下:

然後建立三個片區,截圖如下:

指定資料庫,如果沒有的話隱式建立,截圖如下:

指定集合,截圖如下:

(5)退出管理員身份,進入到指定資料庫指定集合,存放大量的資料,截圖如下:

(6)然後稍微等一下,使資料新增到集合裡面,然後在重新開三個終端,進入到指定資料庫指定集合裡面,看裡面的資料數量,截圖如下:

這就是MongoDB的分散式儲存。

分散式儲存的優點就在於減緩資料庫的壓力,提高響應速度。