下載吧 - 綠色安全的游戲和軟件下載中心

          軟件下載吧

          當前位置:軟件下載吧 > 數據庫 > DB2 > MongoDB分片在部署與維護管理中常見的事項總結大全

          MongoDB分片在部署與維護管理中常見的事項總結大全

          時間:2024-03-26 14:41作者:下載吧人氣:31

          前言

          分片(sharding)是MongoDB將大型集合分割到不同服務器(或者說集群)上所采用的方法,主要為應對高吞吐量與大數據量的應用場景提供了方法。

          將數據分散到不同的機器上,不需要功能強大的服務器就可以存儲更多的數據和處理更大的負載。基本思想就是將集合切成小塊,這些塊分散到若干片里,每個片只負責總數據的一部分,最后通過一個均衡器來對各個分片進行均衡(數據遷移)。通過一個名為mongos的路由進程進行操作,mongos知道數據和片的對應關系(通過配置服務器)。大部分使用場景都是解決磁盤空間的問題,對于寫入有可能會變差(+++里面的說明+++),查詢則盡量避免跨分片查詢。

          使用分片的時機:

          1,機器的磁盤不夠用了。使用分片解決磁盤空間的問題。

          2,單個mongod已經不能滿足寫數據的性能要求。通過分片讓寫壓力分散到各個分片上面,使用分片服務器自身的資源。

          3,想把大量數據放到內存里提高性能。和上面一樣,通過分片使用分片服務器自身的資源。

          和既有的分庫分表、分區方案相比,MongoDB的最大區別在于它幾乎能自動完成所有事情,只要告訴MongoDB要分配數據,它就能自動維護數據在不同服務器之間的均衡。

          一. 分片的集群組件

          MongoDB分片在部署與維護管理中常見的事項總結大全

          1.Mongos 【路由】

          作為請求的訪問入口,所有的請求都由mongos來路由、分發、合并,這些動作對客戶端driver透明,用戶連接mongos就像連接mongod一樣使用。Mongos會根據請求類型及shard key將請求路由到對應的Shard。

          2.Config Server 【配置服務器】

          存儲Sharding Cluster 的所有元數據,所有的元數據都存儲在config數據庫;

          *保存每個分片上的chunk的信息 * 保存chunk上的片鍵范圍。

          3. Shard 【分片】

          存儲應用數據記錄。

          二. 分片優勢

          1.對集群進行抽象,讓集群“不可見”,分片對應用系統是透明的。

          Mongos是專有路由進程,其會將客戶端發來的請求準確無誤的路由到集群中的一個或者一組服務器上,同時會把接收到的響應拼裝起來發回到客戶端。

          2.保證集群總是可讀寫

          將MongoDB的分片和復制集功能結合使用,在確保數據分片到多臺服務器的同時,也確保了每分數據都有相應的備份,可以確保有服務器壞掉時,其他的從庫可以立即接替壞掉的部分繼續工作。提高了集群的可用性和可靠性。

          3.使集群易于擴展

          當系統需要更多的空間和資源的時候,MongoDB使我們可以按需方便的擴充系統容量。

          三. 分片部署注意事項(常見錯誤)

          1.配置可復制集作為分片節點與配置單獨使用的可復制集基本一樣。但啟動參數中需指定—shardsvr參數。

          否則,在啟動數據庫分片時報錯: {"code" : 193,"ok" : 0, "errmsg" : "Cannot accept sharding commands if not started with --shardsvr“}

          2.創建配置服務器集群時,不能設置見證節點。

          否則,報錯 “errmsg” :  "Arbiters are not allowed in replica set configurations being used for config servers"

          3.配置Mongos 實例時,請不要配置dbpath參數。

          否則,設置dbpath參數,服務無法正常啟動,報錯:Error parsing INI config file: unrecognised option 'dbpath'

          4.配置Mongos 實例時,需設置Keyfile。

          否則,不設置Keyfile,Service無法正常啟動, 報錯:2018-05-10T15:30:26.791+0800 W SHARDING [mongosMain] Error initializing sharding state, sleeping for 2 seconds and trying again :: caused by :: Unauthorized: Error loading clusterID :: caused by :: not authorized on config to execute command { find: “version”, readConcern: { level: “majority”, afterOpTime: { ts: Timestamp 1525937413000|2, t: 1 } }, maxTimeMS: 30000

          5.分片集合設置。

          分片不會默認生成,需要先在數據庫中啟動分片(sh.enableSharding(“DBName”) ),然后再設置集合分片(sh.shardCollection(“Collection”{片鍵})

          四. 分片管理的注意事項(常用命令)

          1.檢查shards 配置及狀態

          db.runCommand({listshards:1})

          標簽MongoDB,分片,部署,維護,管理,常見,事項,總結,大全

          相關下載

          查看所有評論+

          網友評論

          網友
          您的評論需要經過審核才能顯示

          熱門閱覽

          最新排行

          公眾號

          主站蜘蛛池模板: 国产一区二区三区在线观看影院| 无码人妻精品一区二区三区66| 国产吧一区在线视频| 免费无码AV一区二区| 亚洲AV无码国产精品永久一区| 亚洲色精品vr一区二区三区| 一区二区福利视频| 在线视频亚洲一区| 日韩免费一区二区三区| 人妻体体内射精一区二区| 国产AV午夜精品一区二区入口| asmr国产一区在线| 波多野结衣在线观看一区 | 精品无人乱码一区二区三区| 无码国产精品一区二区免费式芒果| 国产日韩精品一区二区三区在线| 国产观看精品一区二区三区 | 奇米精品一区二区三区在线观看| 人成精品视频三区二区一区| 视频一区二区中文字幕| 日韩精品一区二区三区不卡| 日本一区二区三区中文字幕| 无码AⅤ精品一区二区三区| 精品乱人伦一区二区| 一区二区三区国模大胆| 亚洲国模精品一区| 日韩人妻无码一区二区三区久久99 | 久久中文字幕一区二区| 国产av天堂一区二区三区| 久久国产一区二区| 精品人无码一区二区三区| 中文字幕精品一区二区2021年| 无码精品一区二区三区| 欧洲精品一区二区三区在线观看| av无码一区二区三区| 无码人妻精品一区二区三区久久| 久久精品午夜一区二区福利| 国产精品美女一区二区三区| 色综合视频一区二区三区| 日韩欧国产精品一区综合无码| 久久久av波多野一区二区|