Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 拥有多个Mongo数据库是否会影响性能?_Mongodb_Performance - Fatal编程技术网

Mongodb 拥有多个Mongo数据库是否会影响性能?

Mongodb 拥有多个Mongo数据库是否会影响性能?,mongodb,performance,Mongodb,Performance,我们目前正在使用Mongo开发一个应用程序,并尝试评估与在多个数据库/集合上传播数据或使用单个共享数据库/集合相关的每个不同体系结构选择的好处和限制 一个数据库具有大量集合,或者多个数据库具有较少的每个数据库集合,这两者之间是否存在性能损失 据我所知,这似乎没有任何影响,因为分片是每个收集的基础上,但我想一些确认 关于性能,我想你指的是读/写速度。使用具有较少集合的多个数据库肯定会提高读/写速度,因为每个数据库都可以处理与其关联的集合上的更多读/写操作 然而,我相信,以这种方式在数据库中传播数据

我们目前正在使用Mongo开发一个应用程序,并尝试评估与在多个数据库/集合上传播数据或使用单个共享数据库/集合相关的每个不同体系结构选择的好处和限制

一个数据库具有大量集合,或者多个数据库具有较少的每个数据库集合,这两者之间是否存在性能损失

据我所知,这似乎没有任何影响,因为分片是每个收集的基础上,但我想一些确认


关于性能,我想你指的是读/写速度。使用具有较少集合的多个数据库肯定会提高读/写速度,因为每个数据库都可以处理与其关联的集合上的更多读/写操作

然而,我相信,以这种方式在数据库中传播数据会给项目带来额外的复杂性,这取决于代码库的结构,它可能会给应用程序逻辑带来复杂性,备份和其他管理数据库操作等事情不会是直截了当的,对于生活在不同数据库中的集合,跨集合即席查询几乎是不可能的


如果架构设计的目标是确保高读/写速度,那么您仍然可以使用一个可以在部署级别自动扩展的DB。我对它了解不多,但我认为MongoDB的一个功能可以帮助您实现这种自动伸缩,如果您使用的是“数据库即服务”,您应该检查一下,自动伸缩是开箱即用的。

是的,我指的是读/写速度,还有CPU和内存消耗。我们正在将应用程序转换为多租户应用程序,基本上数据库之间的隔离不是问题。我们想知道,将相同数量的集合放入单个数据库或拆分为多个数据库的实际成本是多少。从资源的角度来看,使用数据库的结果是什么?它预定了什么吗?专用文件?专用线程?增加内存或CPU消耗?磁盘上的大小增加了吗?正如我在上面的评论中所说,当使用多个数据库时,CPU/内存的使用会更好。我不确定我是否理解你提到的这些其他后果;保留某些东西,专用文件/线程。也许你能解释得更清楚些。谢谢。通过保留某些东西,我的意思是,我想知道,从资源的角度来看,CPU、内存、文件系统大小等,每次选择的结果是什么。。。。例如,您说这是一种更好的CPU/内存使用率,但我不知道Mongo server为什么以及如何管理服务器资源。我可以想象,创建一个数据库会在服务器中创建自己的一组文件,消耗一部分内存和CPU。或者,它仍然是基于收集计数的,并且无论数据库的数量如何,所消耗的资源仍然取决于收集计数。是否有描述低级别管理的技术文档?