当我查看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