performance - 清除缓存以在 MongoDB 中进行性能测试?

标签 performance mongodb mongodb-query

我知道在关系数据库中测试查询性能时,您通常会在运行查询之前清除缓存,以真正了解第一次查询数据时的性能。 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

该讲座系列中还有其他视频 introducedemonstrate "pre- heating data "在您的应用程序访问机器之前将工作集放入内存,这样用户就不会体验到从磁盘读取的糟糕性能。

关于performance - 清除缓存以在 MongoDB 中进行性能测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27870204/

相关文章:

java - 如何针对 vanilla 基准调整 Java GC?

C# Mongo 驱动程序 - MongoCollection.Group 方法

node.js - MongoDB : How to multiply a field that appears only in $project?

node.js - 仅以值数组形式返回结果

c++ - 如何用模板元编程来完成这种复杂的映射呢?

performance - Parallela FPGA-与 GPU 和昂贵的 FPGA 相比,64 核的性能如何?

python - 高效分页查询结果

node.js - 什么查询或运算符将有助于找出 mongoDb 中数组元素的累积和

performance - 使用 Hadoop 的经验?

javascript - 为什么在回调中定义的变量可以在代码中的其他位置访问?