MongoDBNotes

第 31 章:大师之路

zjc 于 2026-01-31 发布

这是《MongoDB 零基础实战指南》的独立章节版。本章从概念、实操和生产排查三个视角展开,代码块保留了原书可直接运行的版本。 从会用 MongoDB 到驾驭 MongoDB,需要经历查询优化、副本集治理、分片架构、数据模型治理和源码级理解。最终能力体现在能结合业务约束做出可靠架构决策。

31.1 学习路线

阶段 重点
入门 CRUD、mongosh、文档模型
进阶 索引、聚合、explain、Schema
高级 副本集、事务、Change Stream、备份
专家 分片、容量、性能、故障演练
大师 架构选型、平台治理、源码贡献

31.2 源码阅读

推荐路径:

driver operation
  -> server command
  -> query planner
  -> storage API
  -> WiredTiger
  -> replication oplog
  -> election
  -> sharding metadata

重点模块:

  1. 查询优化器;
  2. 执行器;
  3. 索引扫描;
  4. WiredTiger 接口;
  5. oplog 应用;
  6. 副本集状态机;
  7. 选举协议;
  8. chunk split / migrate;
  9. mongos 路由;
  10. 事务协调。

从跑通单测和跟踪一条 update 开始。

31.3 实验环境

必做实验:

  1. 三节点副本集;
  2. Primary 切换;
  3. oplog 调整;
  4. Secondary 读;
  5. 多文档事务;
  6. Change Stream;
  7. 三 shard 集群;
  8. 哈希与范围分片对比;
  9. chunk 迁移;
  10. 备份恢复;
  11. 慢查询优化;
  12. cache 压力模拟。

记录版本、配置、数据量、指标和结论。

31.4 平台化治理

MongoDB 平台应提供:

  1. 集群和库生命周期管理;
  2. 权限申请与审计;
  3. Schema 契约和 validator;
  4. 索引评审;
  5. 慢查询看板;
  6. 容量预测;
  7. 备份恢复演练;
  8. 变更审批;
  9. 成本分析;
  10. Runbook。

31.5 架构能力

继续学习:

  1. 文档建模与 DDD 聚合;
  2. 分布式一致性;
  3. Raft 与共识;
  4. 存储引擎;
  5. B+Tree 与 cache;
  6. 分布式事务;
  7. CDC 与数据平台;
  8. 多租户隔离;
  9. 数据安全;
  10. 混沌工程。

架构方案必须回答一致性、容量、故障、观测、成本和回滚。

31.6 版本跟踪

关注:

  1. 新版本默认行为变化;
  2. 查询优化器改进;
  3. 分片能力;
  4. 时间序列集合;
  5. 搜索能力;
  6. 安全增强;
  7. 性能优化;
  8. 企业审计;
  9. 云托管特性;
  10. 驱动兼容。

以官方版本文档为准,不直接套用旧博客结论。

31.7 个人知识库

沉淀:

  1. Schema 评审模板;
  2. 索引设计清单;
  3. 慢查询案例;
  4. 分片压测报告;
  5. 故障时间线;
  6. 升级方案;
  7. 备份演练记录;
  8. 一致性矩阵;
  9. 常用命令;
  10. 源码笔记。

本章小结

大师之路建立在真实数据和故障经验上。通过源码、实验、平台化和架构治理,把 MongoDB 从一个存储产品变成可控、可观测、可演进的基础设施。

思考题

  1. 你当前集群的一致性矩阵是否明确?
  2. 最需要补齐的监控是什么?
  3. 最近一次备份演练是否验证路由和用户?
  4. 哪些集合存在无界增长风险?
  5. 分片键是否有容量模型支撑?