Skip to content

文档型数据库(MongoDB)

MongoDB 很适合保存结构变化比较多的数据。
如果 MySQL 更像“表格型存储”,那 MongoDB 更像“文档型存储”。

为什么会有 MongoDB

真实项目里有很多数据不适合用非常固定的表结构来描述,例如:

  • 爬虫抓下来的网页信息
  • 商品详情字段经常变化的数据
  • 内容类数据

这时 MongoDB 会更自然。

三个最重要的概念

  • database:数据库
  • collection:集合
  • document:文档

你可以先粗略理解成:

  • collection 有点像 MySQL 的表
  • document 有点像一条记录,但字段更灵活

文档长什么样

json
{
  "title": "Python 入门",
  "author": "小王",
  "views": 120,
  "tags": ["python", "基础"]
}

这就是 MongoDB 很像 JSON 的原因。

MongoDB 和 MySQL 的思路区别

MySQL 更强调

  • 表结构
  • 字段约束
  • 表与表之间的关系

MongoDB 更强调

  • 一条文档整体存取
  • 字段可以灵活变化
  • 数据更像 JSON

适合什么场景

MongoDB 特别适合:

  • 半结构化数据
  • 字段经常变化的数据
  • 内容型、抓取型数据

零基础学习建议

学 MongoDB 时,别急着先问“它能不能替代 MySQL”。
先弄清楚一个更重要的问题:什么时候该用文档型数据库。

Built with VitePress.