学习笔记之MongoDB
The most popular database for modern apps | MongoDB
- MongoDB is a cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with schema. MongoDB is developed by MongoDB Inc. and licensed under the Server Side Public License (SSPL).
了解MongoDB数据库
干货|深入理解MongoDB检索
用 pymongo 操作 MongoDB 数据库
为什么 MongoDB 使用 B 树?
- https://mp.weixin.qq.com/s/jl6Ot_oZ_XKxsS0nsMUcvQ
- 应用场景永远都是系统设计时首先需要考虑的问题,作为 NoSQL 的 MongoDB,其目标场景就与更早的数据库就有着比较大的差异,我们来简单总结一下 MongoDB 最终选择使用 B 树的两个原因:
- MySQL 使用 B+ 树是因为数据的遍历在关系型数据库中非常常见,它经常需要处理各个表之间的关系并通过范围查询一些数据;但是 MongoDB 作为面向文档的数据库,与数据之间的关系相比,它更看重以文档为中心的组织方式,所以选择了查询单个文档性能较好的 B 树,这个选择对遍历数据的查询也可以保证可以接受的时延;
- LSM 树是一种专门用来优化写入的数据结构,它将随机写变成了顺序写显著地提高了写入性能,但是却牺牲了读的效率,这与大多数场景需要的特点是不匹配的,所以 MongoDB 最终还是选择读取性能更好的 B 树作为默认的数据结构;