這篇文章主要為大家展示了“MongoDB分片技術(shù)的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“mongodb分片技術(shù)的示例分析”這篇文章吧。
創(chuàng)新互聯(lián)建站長期為成百上千客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為上街企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計,上街網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
在mongodb里面存在另一種集群,就是分片技術(shù),當數(shù)據(jù)量達到T級別的時候,我們的磁盤,內(nèi)存就吃不消了,針對這樣的場景我們該如何應(yīng)對。
一:分片
mongodb采用將集合進行拆分,然后將拆分的數(shù)據(jù)均攤到幾個片上的一種解決方案。
下面我對這張圖解釋一下:
人臉:代表客戶端,客戶端肯定說,你數(shù)據(jù)庫分片不分片跟我沒關(guān)系,我叫你干啥就干啥,沒什么好商量的。
mongos: 首先我們要了解”片鍵“的概念,也就是說拆分集合的依據(jù)是什么?按照什么鍵值進行拆分集合....
好了,mongos就是一個路由 mongod: 一個普通的數(shù)據(jù)庫實例,如果不分片的話,我們會直接連上mongod。 二: 實戰(zhàn) 首先我們準備4個mongodb程序,我這里是均攤在C,D,E,F(xiàn)盤上,當然你也可以做多個文件夾的形式。 1:開啟config服務(wù)器 先前也說了,mongos要把mongod之間的配置放到config服務(wù)器里面,理所當然首先開啟它,我這里就建立2222端口。 2: 開啟mongos服務(wù)器 這里要注意的是我們開啟的是mongos,不是mongod,同時指定下config服務(wù)器,這里我就開啟D盤上的mongodb,端口3333。 3:啟動mongod服務(wù)器 對分片來說,也就是要添加片了,這里開啟E,F(xiàn)盤的mongodb,端口為:4444,5555。 4: 服務(wù)配置 哈哈,是不是很興奮,還差最后一點配置我們就可以大功告成。 <1> 先前圖中也可以看到,我們client直接跟mongos打交道,也就說明我們要連接mongos服務(wù)器,然后將4444,5555的mongod 交給mongos,添加分片也就是addshard()。 這里要注意的是,在addshard中,我們也可以添加副本集,這樣能達到更高的穩(wěn)定性。 <2>片已經(jīng)集群了,但是mongos不知道該如何切分數(shù)據(jù),也就是我們先前所說的片鍵,在mongodb中設(shè)置片鍵要做兩步 ①:開啟數(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ù)的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
本文標題:mongodb分片技術(shù)的示例分析
網(wǎng)頁網(wǎng)址:http://weahome.cn/article/gspdjc.html