描述
Mongodb访问磁盘中的数据要比访问内存中的数据慢得多,而且mongodb的内存是依靠操作自身管理的,不像mysql中中的innodb存储引擎,还需要管理自己的内存调配,因此事先将磁盘中的数据加载到内存中可以大大提高mongodb的性能。
例子
将数据库/数据目录移至内存:
for file in /data/db/brains .*
do
dd if =$ file of= /dev/null
done
当要加载的数据大于内存大小的,之前加载的数据可能会挤兑出内存,所以有的时候将整个数据目录加载
到数据库中意义并不是很大,
如果出现这个情况可以只将访问比较频繁的集合加载到内存中
db.runCommand({touch: "recordname" ,data: true , index : true })
rs0: PRIMARY > db.runCommand({touch: "recordname" ,data: true , index : true })
{
"data" : {
"numRanges" : 3,
"millis" : 91
},
"indexes" : {
"num" : 1,
"numRanges" : 1,
"millis" : 182
},
"ok" : 1
}
总结
参考相关链接:
https://blog.csdn.net/weixin_34344403/article/details/90002589