Karp 的技术博客

MongoDB 使用的是 WiredTiger 存储引擎,这是其默认的存储引擎。WiredTiger 在设计上注重性能和压缩,支持多线程并发和事务,适合高负载和多用户环境。

1. MongoDB 存储引擎概述

1.1 WiredTiger

  • 默认存储引擎:从 MongoDB 3.2 版本开始,WiredTiger 成为默认的存储引擎。
  • 特性

    • 高性能:通过多线程和并发控制提高读写性能。
    • 数据压缩:支持多种压缩算法(如 Snappy 和 zlib),可以减少存储空间。
    • 事务支持:支持 ACID 事务,允许在多个文档之间进行原子操作。

1.2 MMAPv1

  • 早期存储引擎:在 MongoDB 3.0 之前,MMAPv1 是默认的存储引擎。
  • 特性

    • 简单性:基于内存映射文件,易于理解。
    • 缺点:不支持并发写入,性能较差,且不支持事务。

1.3 其他存储引擎

在 MongoDB 中,还可以使用其他存储引擎,例如:

  • In-Memory Storage Engine:专为需要极高性能的应用设计,数据存储在内存中。
  • Encrypted Storage Engine:提供数据加密功能,适合需要安全性的场景。

2. 如何查看当前使用的存储引擎

您可以通过 MongoDB shell 查询当前数据库使用的存储引擎:

db.runCommand({ getParameter: 1, storageEngine: 1 })

这将返回当前数据库的存储引擎信息。

mongodb

版权属于:karp
作品采用:本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
更新于: 2024年10月21日 03:51
0

目录

来自 《查询Mongo 用的是什么引擎》