当前位置:优草派 > 问答 > Python问答

MongDB数据库是基于内存运行的吗?

标签: Python  python数据库  MongoDB  作者: 罗西汉

回答:

mongdb数据库最被人们所熟知的特点就是它对于大量数据的处理速度是非常快的,那么它的运行速度快是基于内存吗。本篇文章将会来详细的讲解一下mongdb的运行机制是怎么样的,往下看看吧。

MongDB数据库是基于内存运行的吗?mongdb运行机制详解

1.mongdb数据库是以C++进行开发的,所以它在对于大量数据的处理上有很好的支持。在mongdb数据库中有一个机制叫做预分配空间,每一个被预分配的文件都会用0去进行填充。这使MongoDB始终保持空余的数据文件和额外的空间,有效避免了数据暴增而带来的磁盘压力过大的问题。

2.mongdb数据库中的数据文件每增加一次,它的容量大小都会去增加上一个文件的双倍,每个文件的大小上下为2GB。这能保证较大的数据库有相应的预留空间使用,又有利于防止较小的数据库浪费过多的磁盘空间。

3.mongdb数据库的数据文件是存储在硬盘上的,但是在读取数据时会将数据全部加载到内存中方便查询。这样的方式可以显著的提高查询的速度,但是也会给内存造成极大的压力,说mongdb数据库是基于内存运行的也没错。

4.而让mongdb运行速度快的最主要原因就是它使用的是内存映射存储引擎,也就是会将磁盘上去读数据的io流操作放在内存之中执行。这样可以极大的提高查询速度,简化工作,但是却无法去精准的控制mongdb会占用多少内存。

以上就是mongdb运行机制的详细解析了,希望对你有所帮助。

TOP 10
  • 周排行
  • 月排行