我知道在关系数据库中测试查询性能时,您通常会在运行查询之前清除缓存,以真正了解第一次查询数据时的性能。 MongoDB 中有类似的东西吗?
我找到了一些 query plan cache clearing stuff ,但不会清除缓存数据。 MongoDB中有这样的东西吗?如果是这样,有人可以指点我一些文档吗?
最佳答案
此解决方案假设您使用的是类 Unix 系统。
我没有做过很多 MongoDB 的 DBA,但我相信 this video包含清除缓存数据的答案。
视频的相关部分大约为 4:57 in the video。命令是:
sudo echo 1 > /proc/sys/vm/drop_caches
正如视频中所解释的那样,在大多数情况下使用 1
应该就足够了,但如果您想绝对确定,可以使用 3
。如果你(就像来自 MongoDB class 的讲师)发现该命令“不够优雅”,你可以使用:
sudo sysctl -w vm.drop_caches=1
该讲座系列中还有其他视频 introduce和 demonstrate "pre- heating data "在您的应用程序访问机器之前将工作集放入内存,这样用户就不会体验到从磁盘读取的糟糕性能。
关于performance - 清除缓存以在 MongoDB 中进行性能测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27870204/