Mongo 2.6.12 与 Mongo 4.0 基准测试

Mongo 2.6.12 与 Mongo 4.0 基准测试

我遇到了一个问题,我在新电脑上使用旧的 2.6.12 版 mongodb,但速度并不快,我不知道为什么。Mongo 2.6.12 甚至没有尝试以 100% 的速度使用我的电脑,只使用了 40%。

参见 Mongo 2.6.12 基准 db.update它只占用 40% 的 CPU
参见 Mongo 4.0.10 基准 db.update它使用了 100% 的 CPU

如何让 Mongo 2.6.12 100% 正常运行

答案1

曾经有五大主要发布自 MongoDB 2.6 发布以来的五年里,MongoDB 经历了许多重大改进(以及许多小改进)。MongoDB 的后续版本包含许多重大改进,例如新的存储引擎(有线老虎) 具有文档级并发、数据压缩和索引前缀压缩等功能。WiredTiger 的设计目标包括更有效地使用 I/O、更高地利用多个 CPU 核心,以及在给定的工作负载下需要更少的硬件。

预计 WiredTiger 在多线程工作负载下通常会具有更好的吞吐量和资源利用率。例如,请参阅MongoDB 3.0 性能测试博客文章系列。原始 MMAPv1 存储引擎具有数据库级锁定和其他设计限制,只能通过替代存储引擎来解决。自 MongoDB 3.2 以来,WiredTiger 一直是新部署的默认存储引擎;MMAPv1 存储引擎在 MongoDB 4.0 中已弃用,并将在即将发布的 MongoDB 4.2 服务器版本中被删除。

在没有看到基准测试细节的情况下testcpu.js,我认为它遇到了 MongoDB 2.6 的并发限制之一,该限制现已得到解决。但是,由于 MongoDB 2.6 已于 2016 年 10 月终止使用,因此该细节已无意义。我强烈建议升级到积极支持的 MongoDB 服务器版本(目前为 3.4 或更新版本)。

相关内容