📘 目录

  1. 什么是 MongoDB?
  2. MongoDB 安装与环境配置
  3. MongoDB 基础概念(数据库、集合、文档)
  4. MongoDB 常用 CRUD 操作
  5. MongoDB 查询与条件表达式
  6. MongoDB 聚合管道(Aggregation)
  7. MongoDB 索引机制详解
  8. MongoDB 副本集与高可用
  9. MongoDB 分片集群与横向扩展
  10. MongoDB 性能优化技巧
  11. MongoDB 与 Python/Node.js 集成
  12. MongoDB 与关系数据库的整合
  13. MongoDB Atlas 云服务入门
  14. 实战项目:构建一个小型博客系统

第1章:什么是 MongoDB?

一、定义与简介

MongoDB 是一个高性能、开源、跨平台的文档型 NoSQL 数据库,由 MongoDB Inc. 于 2009 年发布,使用 C++ 编写。它采用类似 JSON 的 BSON 格式存储数据,数据结构灵活,天然适配现代 Web 应用的快速开发需求。

{
  "name": "Alice",
  "age": 28,
  "email": "alice@example.com",
  "tags": ["developer", "mongodb", "remote"]
}

MongoDB 以文档为基本单元,文档存储在集合中,集合属于数据库。


二、MongoDB 的定位

MongoDB 主要为以下应用场景设计:

  • Web 和移动应用快速开发
  • 动态 Schema 的业务模型(如电商、社交)
  • 大数据与日志收集
  • 高并发访问与实时读写

三、与关系型数据库对比

方面MongoDBMySQL / PostgreSQL
数据模型文档(JSON/BSON)表格(行/列)
Schema动态,可嵌套静态,需预定义
扩展性易于分片扩展分库分表较复杂
事务支持多文档事务(v4.0+)支持原生事务,ACID 强
查询语言Mongo 查询语法(类 JSON)SQL 标准

四、MongoDB 的核心特性

  1. 文档模型灵活,支持嵌套结构
  2. 支持全文搜索、地理空间查询
  3. 自动分片与副本集机制支持海量存储
  4. 易于横向扩展(Sharding)
  5. 天然适配 JSON 驱动的前后端交互

五、典型应用场景

应用类型示例场景
CMS 内容系统博客、新闻平台
实时消息系统聊天、推送平台
电商平台商品属性结构多变
IoT 数据平台设备数据、时间序列
用户行为分析日志记录、用户画像、点击行为分析

六、MongoDB 的发展历程

时间版本更新 / 里程碑
2009 年MongoDB 初版发布
2017 年MongoDB 公司上市(NASDAQ: MDB)
2018 年MongoDB 4.0:引入多文档事务
2021 年MongoDB 5.0:原生时间序列支持
2024 年MongoDB Atlas 云平台拓展

🌐 出站链接


📚 参考资料

  1. 《MongoDB 权威指南》(O’Reilly 出版,原书名 MongoDB: The Definitive Guide
  2. MongoDB 官方博客与技术白皮书
  3. 菜鸟教程 MongoDB 教程章节
    https://www.runoob.com/mongodb/mongodb-tutorial.html
  4. MongoDB Atlas 使用文档与指南