MongoDB是一个面向文档的数据库,目前由10gen开发并维护。其功能丰富齐全,足以替代MySQL。在产品原型开发过程中,我们总结了MongoDB的多个亮点:
1. 使用JSON风格语法,易于掌握和理解
MongoDB使用JSON的变种BSON作为内部存储的格式。所有对MongoDB的操作均采用JSON风格语法,客户端提交或接收的数据都以JSON形式展示,直观易懂。
2. Schema-less设计,支持嵌入子文档
MongoDB是一个Schema-free文档数据库,允许多种结构的文档共存于同一个Collection中,不需要预先定义文档结构(schema)。每个Collection可以包含不同的文档结构,提升灵活性。文档间还可通过嵌入子文档实现数据的逆规范化(denormalization),从而提高查询速度。
图1:MongoDB的Schema-free设计
图2:作品和评论的嵌入式设计
3. 查询方式简单直观
MongoDB的查询直接使用JSON结构,且无需复杂的SQL语法。不同开发语言中可使用数组或散列格式进行查询,配合丰富的操作符,大大简化了开发过程。