當我查看mongoDb文檔時,發現了兩個不同的術語'mongod'和'mongos'。mongod和mongos之間的確切區別是什麼
在啓動服務器時,我正在使用'./mongod --dbpath < mongodb>的路徑',並且正在運行'./mongo'以連接到服務器。
我試圖找到確切的區別,但找不到更好的答案。
有人可以澄清這兩個術語之間的差異。
當我查看mongoDb文檔時,發現了兩個不同的術語'mongod'和'mongos'。mongod和mongos之間的確切區別是什麼
在啓動服務器時,我正在使用'./mongod --dbpath < mongodb>的路徑',並且正在運行'./mongo'以連接到服務器。
我試圖找到確切的區別,但找不到更好的答案。
有人可以澄清這兩個術語之間的差異。
mongod
是守護進程,mongo
是客戶端,mongos
是'MongoDB Shard Utility'。看一看man mongos
:
mongos爲「MongoDB的碎片」,是從應用層處理查詢的MongoDB碎片配置的路由服務,並且確定該數據的位置在 的分片簇,爲了完成這些操作。從應用程序的角度來看,mongos實例的行爲與任何其他MongoDB實例的行爲相同。
MongoDB包中的核心組件是:mongod - 核心數據庫進程; mongos - 分片羣集的控制器和查詢路由器;和mongo交互式的MongoDB Shell。
在碎片集羣,mongod的作爲分片數據處理和存儲的元數據分片處理。 mongos作爲操縱客戶端請求的路由進程。
Mongos = MongoDB Shard實用程序,用於分片羣集的控制器和查詢路由器。分片將數據集分成不連續的部分。
Mongod = MongoDB系統的主守護進程。它處理數據請求,管理數據訪問並執行後臺管理操作。
mongo複製和分片的解釋確實幫助我理解它:https://dba.stackexchange.com/a/53705/106925