教程的主要内容
MongoDB的基础概念,数据库、集合的创建、基础的增删改查、高级查询的聚合管道
MongoDB是什么?它有什么优势(为什么要用它)?
MongoDB是什么:
MongoDB是一款为web应用程序和互联网基础设施设计的数据库管理系统。是NoSQL类型的数据库。同时也是最像关系型数据库的非关系型数据库。
为什么要用MongoDB:
-
MongoDB提出的是文档、集合的概念,使用BSON(类JSON)作为其数据模型结构,其结构是面向对象的而不是二维表,存储一个用户在MongoDB中是这样子的。
{
username: 'imyzt',
password: '123'
}
使用这样的数据模型,使得MongoDB能在生产环境中提供高读写的能力,吞吐量较于mysql等SQL数据库大大增强。
-
易伸缩,自动故障转移。易伸缩指的是提供了分片能力,能对数据集进行分片,数据的存储压力分摊给多台服务器。自动故障转移是副本集的概念,MongoDB能检测主节点是否存活,当失活时能自动提升从节点为主节点,达到故障转移。
-
数据模型因为是面向对象的,所以可以表示丰富的、有层级的数据结构,比如博客系统中能把“评论”直接嵌入“文章“的文档中,而不必像myqsl一样创建三张表来描述这样的关系。