MongoDB不同于传统关系型数据库,它属于noSQL数据库。下面我们从为什么,是什么,怎么用,安装等方便讲解MongoDB。
1. 为什么要NoSQL
关系型数据库难以克服的问题:
①高并发读写(数据库事务的一致性需求)
②海量数据的高效率存储与访问(数据库的写实时性和读实时性需求)
③高可扩展和高可用性(对复杂的SQL查询,特别是多表关联查询的需求)
而NoSQL的特点是:①处理超大量的数据;②运行在便宜的PC服务器集群上;③打破性能瓶颈;④操作简单;⑤开源支持
MongoDB是一个介于关系型数据库与非关系型数据库之间的产品,是非关系数据库当中功能最丰富的,最像关系型数据库的。他支持的数据结构非常松散,是类似于JSON的BSON格式,因此可以存储比较复杂的数据类型。MongoDB最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似于关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。它是一个面向集合的,模式自由的文档型数据库。
2. MongoDB中的基本概念:
DB(库)-数据库
Collection(集合)-表
Document(文档)-行
Field(字段)-列
Index(索引)-索引
PrimaryKey(主键)-主键
3. MongoDB的应用场景
①应用不需要事务及复杂Join支持
②新应用,需求会变,数据模型无法确定,想快速迭代开发
③应用需要2000-3000以上的读写QPS(更高也可以)
④应用需要TB甚至PB级别数据存储
⑤应用发展迅速,需要能快速水平扩展
⑥应用要求存储的数据不丢失
⑦应用需要99.999%高可用
⑧应用需要大量的地理位置查询、文本查询
满足以上两个条件,就可以考虑选择MongoDB了。
MongoDB目前已经渗透到游戏、物流、电商、内容管理、社交、物联网、视频直播等领域。
那什么场景不能使用MongoDB呢?高度事务性系统(像金融等)。
来源:CSDN
作者:Sara2018
链接:https://blog.csdn.net/qq_35689573/article/details/103604322