MongoDB之简介

一、什么是MongoDB

MongoDB是一个基于分布式文件存储的数据库,由C++语言编写。旨在为web应用提供可扩展的高性能数据存储解决方案。

MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系型数据库的。

它和我们常用的关系型数据库的最大的区别就是约束性,可以说文件型数据库几乎不存在约束性,理论上没有主键、外键约束,没有存储的数据类型约束等等。

关系型数据库中有一个“表”的概念,有“字段”的概念,有“数据条目”的概念。

MongoDB中也用样有以上的概念,但是名称发生了一些变化。严格意义上来说,两者的概念有点相似。

下面,让我们来做一个小例子,来详细说明关系型数据库和MongoDB的区别。

下表是我们用关系型数据库做的一张很简单的user表:

接下来我们再看一下MongoDB的数据结构:

 

从表面来看,MangoDB的数据结构很类似Python中的列表和字典,但是在MangoDB中,我们把这种类型叫做Json。

MangoDB的每张表(Collection)中存储的每条数据(Documents)都是一个一个的json,json中每一个字段(key),我们称之为field。

就此我们引出了三个关键字:

  • Collection也就是关系型数据库中“表”的概念
  • Documents就是“数据条目”
  • Field就是“字段”

 

posted @ 2018-11-27 20:50  _杨魏  阅读(156)  评论(0编辑  收藏  举报