Mongo
MongoDB是一个开源文档数据库,提供高性能,高可用性和自动扩展。
文件数据库
MongoDB中的记录是一个文档,它是由字段和值对组成的数据结构。
MongoDB文档类似于JSON对象。字段的值可以包括其他文档,数组和文档数组。
- 文档数据库的优点
文档(即对象)对应于许多编程语言中的本机数据类型。
嵌入式文档和数组减少了对昂贵连接的需求。
动态模式支持流畅的多态性。
核心特性
高性能
MongoDB提供高性能数据持久性。特别是,
对嵌入式数据模型的支持减少了数据库系统的I / O活动。
索引支持更快的查询,并且可以包含来自嵌入式文档和数组的键。
丰富的查询语言
MongoDB支持丰富的查询语言以支持读写操作(CRUD)以及:
数据聚合
文本搜索和地理空间查询。
高可用性
MongoDB的复制工具称为副本集,它提供:
自动故障转移和
数据冗余。
副本集是一组MongoDB服务器,它们维护相同的数据集,提供冗余并提高数据可用性。
水平可伸缩性
MongoDB提供水平可伸缩性作为其核心功能的一部分:
分片在一组机器上分配数据。
从3.4开始,MongoDB支持基于分片键创建数据区域。在平衡群集中,MongoDB仅将区域覆盖的读取和写入指向区域内的分片。有关更多信息,请参阅Zones手册页。 支持多个存储引擎
MongoDB支持多个存储引擎:
WiredTiger存储引擎(包括对静态加密的支持)
内存存储引擎
MMAPv1存储引擎(在MongoDB 4.0中不推荐使用)
此外,MongoDB提供可插拔存储引擎API,允许第三方为MongoDB开发存储引擎。
SQL 和 mongo 的映射关系
SQL 和 MongoDB 的映射对应关系。
拓展阅读
参考资料
https://docs.mongodb.com/manual/introduction/