MongoDB 是一个提供了高性能、高可用、自动扩展的开源的文档数据库。
文档数据库
在MongoDB中,一条纪录就是一个文档,它是由字段和值对组成的数据结构。MongoDB的文档类似于 JSON 对象。字段值可以包含其他文档、数组、和文档数组。
使用文档的优势是:
文档(例如对象)对应许多编程语言的默认数据类型。
嵌入文档和数组减少了昂贵的 join 操作的需求。
动态模式支持流畅多态性。
主要特征
高性能
MongoDB中提供高性能的数据持久化。 尤其是:
在数据库系统中,对于嵌入式数据模型的支持减少了 I/O 活动。
索引支持更快的查询,可以从内嵌文档和数组中包含Key。
丰富的查询语言
MongoDB支持丰富的查询语言,支持读写操作(CURD),例如:
数据聚合
文本检索和地理空间查询
高可用
MongoDB 的复制功能,被成为副本集。它提供:
自动故障转移
数据冗余
副本集是一组MongoDB服务器,保持相同的数据集,提供冗余和提高数据可用性的。
横向扩展
MongoDB提供水平可伸缩性的核心功能:
分片将数据分布到集群的机器
标记清楚分片允许数据引导到特定的分片,如考虑地理分布的碎片
支持多种存储引擎
MongoDB支持多个存储引擎,如:
WiredTiger存储引擎
MMAPv1存储引擎
此外,MongoDB提供可插拔存储引擎API,允许第三方制定MongoDB的存储引擎。
下一章:https://segmentfault.com/a/11...
本文来源:https://docs.mongodb.com/manu...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。