MongoDB学习之旅
MongoDB
- 什么MongoDb
一个以JSON为数据模型的文档数据库 - 为什么叫文档数据库
文档来自于“JSON Document”,并非我们理解 的pdf word文档 - 主要用途
应用数据库,类似于Oracle/MYSQL,海量数据处理,数据平台 - 主要特点
建模为可选,JSON数据模型比较适合开发者,横向扩展可以支撑很大数据量和并发
ACID事务支持在4.0已经支持
- MongoDB VS. 关系型数据库
MongoDB的特色及优势
优势1:面向开发者的易用+高效数据库
无模式设计
1 |
|
- 数据库引擎只需要在一个存储区读写
- 反范式、无关联的组织 极大优化查询速度
- 程序 API自然,开发快速
优势2:原生的高可用和横向扩展能力
(分布式方面的优势)
默认3个节点的复制部署(最少2最多50个)
奇数
Application –>Driver–>Primary/Secondary/Secondary(Replication)
横向能力:需要的时候无缝扩展/应用全透明/多种数据分布策略/轻松支持TB/PB数量级
1 | show dbs |
MongoDB分片集群架构
三种常见部署架构
单机版(20%):开发测试,不推荐线上环境使用
复制集(70%):高可用,一个二从或更多从节点
分片集群(10%):横向扩展,最小分片集群9~10个实例,适用大型应用场景