我可以将MongoDB配置为内存中吗?

Joe*_*zer 2 mongodb in-memory-database

我对使用能够提供高性能的数据库感兴趣,并且预期群集需要大规模水平扩展。

我们正在研究使用MongoDB,有人知道我是否可以在InMemory中使用它(即出于性能原因在RAM中使用)?

特纳克斯

小智 7

您可以采取的提高性能的方法是使用RAM磁盘

例如:

mongod --smallfiles --noprealloc --nojournal --dbpath <ramdisk mounted localtion>
Run Code Online (Sandbox Code Playgroud)

也可以看看:


Piy*_*iya 7

截至今天,最新版本的 MongoDB,即 v3.4 在其企业软件版本中支持内存引擎。如果您寻求开源版本,Percona 的 MongoDB 是不错的选择。

Mongo 企业版:https : //docs.mongodb.com/manual/core/inmemory/

Percona 的 MongoDB 产品:https : //www.percona.com/software/mongo-database/percona-memory-engine-for-mongodb


小智 5

使用tmpfs

至少在Linux上,由于MongoDB使用内存映射(mmap)文件,因此您可以设置tmpfs驻留在内存中的系统。

这是有关为MongoDB设置tmpfs 的简洁教程

内存映射文件

内存映射文件在其常见问题解答中有更详细的说明。它还说MongoDB被自动配置为使用系统上的所有可用空闲内存作为其缓存(链接)。

结论

基本上,没有用于纯内存数据库的模块,但是通过使用内存fs,人们可以对其进行仿真。

附带一提,我确实找到了MorboDB,这是“内存数据库,MongoDB的大多数兼容克隆”。可能对您没有用,但我认为这很有趣。