NoSQL数据库的区别

4
NoSQL术语有4个类别:
  1. 键值存储
  2. 文档导向
  3. 图形
  4. 列导向
在我看来,所有这些数据建模都有相同的定义,它们之间有什么区别呢?
键值数据库将数据维护在类似于OOP对象的结构中。访问数据基于唯一键。如下图所示,键值就像OOP中的堆栈内存和堆内存。 key value is like stack memory & heap memory in OOP 列导向是一种类似于键值的方法!但是在键值中,您无法通过查询访问值。我的意思是,查询是基于键的。请参见以下两个不同类别的第1张和第2张图片进行比较。 Column oriented 文档导向将数据存储在集合中,类似于行。访问数据基于唯一键。集合存储数据就像键值一样。但是,您可以通过值访问数据。 Document oriented 正如您所见,在这3个类别中,我们为指定唯一对象定义了唯一键和一些键值对以获取更多信息。
图形数据库有点不同。
那么,在定义和现实世界中有什么区别呢?

看这个:http://www.youtube.com/watch?v=qI_g07C_Q5I 我见过的最好的NoSQL介绍。 - synhershko
1个回答

2
文档数据库将每个键与一个名为"文档"的复杂数据结构配对。文档可以包含许多不同的键值对,或键数组对,甚至是嵌套文档。
图形存储用于存储有关数据网络(如社交连接)的信息。图形存储包括Neo4J和Giraph。
键值存储是最简单的NoSQL数据库。数据库中的每个条目都存储为属性名称(或"键"),以及它的值。键值存储的示例包括Riak和Berkeley DB。一些键值存储(如Redis)允许每个值具有类型,例如“整数”,从而增加了功能性。
宽列存储(如Cassandra和HBase)针对大型数据集的查询进行了优化,并将数据列一起存储,而不是行。
更多内容请访问 MongoDB 链接。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接