NoSQL数据库-MongoDB

NoSQL(Not Only SQL)数据库可以是任何非关系型数据库,它是一个概括性的总称

NoSQL不能执行JOIN之类的操作:是为了:1.读取的速度更快

                                                                  2.通过把数据分别存储到不同的服务器甚至不                                                                                同的数据中心,方便实现去中心化的数据存储


现代的NoSQL数据库包括:键值数据库文档数据库列式数据库基于图的数据库

NoSQL数据库-MongoDB_第1张图片

键值数据库:

用起来跟Python字典比较相似,每个键与一个单独的值相关联,通过该键可以取出其值

(值的内容大多情况下是不可以查询的)

 

文档数据库:

文档:在数据库中保存的键值对集合

这些文档是无固定表结构的(一个文档的结构不需要跟另一个文档一样)

大多数文档数据库会把数据以JSON或者MXL的格式进行存储

常见文档数据库:MongoDB、CouchDB、Couchbase

 

列式数据库:(宽列存储)

最快的NoSQL数据库类型

数据是通过一个唯一的键来保存和读取的

每个键都有一些对应的列,而这些列本身也是键值对

数据只能通过键排序

 

基于图的数据库:

描述和查询数据之间的关联

拥有特别机制,可以创建和描述两个节点之间的链接(一个节点就是一条单独的数据)

图式数据库可以通过追踪大量的链接进行查询,以回答十分复杂的问题(推荐引擎)


MongoDB是一种使用文档式存储的NoSQL数据库

(文档被存储在集合里)∴相似的文档可以归类在一起

 

文档是由叫做BSON的格式来定义的,BSON是JSON的超集(二进制的JSON)。BSON允许把JSON存为二进制格式,而不是字符串格式,这样又节省了大量的空间


推荐其他博友的MongoDB的安装:windows下MongoDB的安装及配置


 

你可能感兴趣的:(Nosql)