主頁 > 知識庫 > mongodb分片技術(shù)_動力節(jié)點Java學院整理

mongodb分片技術(shù)_動力節(jié)點Java學院整理

熱門標簽:地方門戶網(wǎng)站 Linux服務器 呼叫中心市場需求 AI電銷 服務外包 百度競價排名 鐵路電話系統(tǒng) 網(wǎng)站排名優(yōu)化

在mongodb里面存在另一種集群,就是分片技術(shù),當數(shù)據(jù)量達到T級別的時候,我們的磁盤,內(nèi)存就吃不消了,針對這樣的場景我們該如何應對。

一:分片

mongodb采用將集合進行拆分,然后將拆分的數(shù)據(jù)均攤到幾個片上的一種解決方案。

下面我對這張圖解釋一下:

人臉:代表客戶端,客戶端肯定說,你數(shù)據(jù)庫分片不分片跟我沒關系,我叫你干啥就干啥,沒什么好商量的。

mongos: 首先我們要了解”片鍵“的概念,也就是說拆分集合的依據(jù)是什么?按照什么鍵值進行拆分集合....

好了,mongos就是一個路由服務器,它會根據(jù)管理員設置的“片鍵”將數(shù)據(jù)分攤到自己管理的mongod集群,數(shù)據(jù)

分片的對應關系以及相應的配置信息保存在"config服務器"上。

mongod: 一個普通的數(shù)據(jù)庫實例,如果不分片的話,我們會直接連上mongod。

二: 實戰(zhàn)

首先我們準備4個mongodb程序,我這里是均攤在C,D,E,F(xiàn)盤上,當然你也可以做多個文件夾的形式。

1:開啟config服務器

先前也說了,mongos要把mongod之間的配置放到config服務器里面,理所當然首先開啟它,我這里就建立2222端口。

2: 開啟mongos服務器

這里要注意的是我們開啟的是mongos,不是mongod,同時指定下config服務器,這里我就開啟D盤上的mongodb,端口3333。

3:啟動mongod服務器

對分片來說,也就是要添加片了,這里開啟E,F(xiàn)盤的mongodb,端口為:4444,5555。

4: 服務配置

哈哈,是不是很興奮,還差最后一點配置我們就可以大功告成。

 1> 先前圖中也可以看到,我們client直接跟mongos打交道,也就說明我們要連接mongos服務器,然后將4444,5555的mongod

交給mongos,添加分片也就是addshard()。

這里要注意的是,在addshard中,我們也可以添加副本集,這樣能達到更高的穩(wěn)定性。

2>片已經(jīng)集群了,但是mongos不知道該如何切分數(shù)據(jù),也就是我們先前所說的片鍵,在mongodb中設置片鍵要做兩步

        ①:開啟數(shù)據(jù)庫分片功能,命令很簡單 enablesharding(),這里我就開啟test數(shù)據(jù)庫。

        ②:指定集合中分片的片鍵,這里我就指定為person.name字段。

5: 查看效果

好了,至此我們的分片操作全部結(jié)束,接下來我們通過mongos向mongodb插入10w記錄,然后通過printShardingStatus命令

查看mongodb的數(shù)據(jù)分片情況。

這里主要看三點信息:

① shards:     我們清楚的看到已經(jīng)別分為兩個片了,shard0000和shard0001。

② databases:  這里有個partitioned字段表示是否分區(qū),這里清楚的看到test已經(jīng)分區(qū)。

③ chunks:     這個很有意思,我們發(fā)現(xiàn)集合被砍成四段:

無窮小 —— jack0,jack0 ——jack234813,jack234813——jack9999,jack9999——無窮大。

分區(qū)情況為:3:1,從后面的 on shardXXXX也能看得出。

您可能感興趣的文章:
  • 如何為MongoDB添加分片副本集
  • 分布式文檔存儲數(shù)據(jù)庫之MongoDB分片集群的問題
  • MongoDB搭建高可用集群的完整步驟(3個分片+3個副本)
  • Mongodb副本集和分片示例詳解
  • MongoDB分片集群部署詳解
  • MongoDB分片在部署與維護管理中常見的事項總結(jié)大全
  • 詳解MongoDB4.0構(gòu)建分布式分片群集
  • MongoDB分片鍵的選擇和案例實例詳解
  • MongoDB分片詳解
  • mongodb3.4集群搭建實戰(zhàn)之高可用的分片+副本集
  • 深入理解MongoDB分片的管理
  • Mongodb 刪除添加分片與非分片表維護
  • MongoDB 主分片(primary shard)相關總結(jié)

標簽:湘潭 崇左 銅川 湖南 衡水 仙桃 蘭州 黃山

巨人網(wǎng)絡通訊聲明:本文標題《mongodb分片技術(shù)_動力節(jié)點Java學院整理》,本文關鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266