首页 > 代码库 > 四大类NoSQL数据库

四大类NoSQL数据库

原文:http://blog.monitis.com/index.php/2011/05/22/picking-the-right-nosql-database-tool/
nosql学习网站推荐:
http://nosql-database.org/
http://blog.nosqlfan.com/
 

1.key-value存储

Examples

Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB

典型应用场景

内容缓存,主要用于处理大量数据的高访问负载,也用于一些日志系统等等。

数据模型

Key 指向 Value 的键值对,通常用hash table来实现

强项

查找速度快

弱项

数据无结构化,通常只被当作字符串或者二进制数据

 

 

 

 

 

 

 

 


2.列式数据库

Examples

Cassandra, HBase, Riak

典型应用场景

分布式的文件系统

数据模型

以列簇式存储,将同一列数据存在一起

强项

查找速度快,可扩展性强,更容易进行分布式扩展

弱项

功能相对局限

 

 

 

 

 

 

 

 


3.文档型数据库

Examples

CouchDB, MongoDb

典型应用场景

Web应用(与Key-Value类似,Value是结构化的,不同的是数据库能够了解Value的内容)

数据模型

Key-Value对应的键值对,Value为结构化数据

强项

数据结构要求不严格,表结构可变,不需要像关系型数据库一样需要预先定义表结构

弱项

查询性能不高,而且缺乏统一的查询语法。

 

 

 

 

 

 

 

 


4.图结构数据库

Examples

Neo4J, InfoGrid, Infinite Graph

典型应用场景

社交网络,推荐系统等。专注于构建关系图谱

数据模型

图结构

强项

利用图结构相关算法。比如最短路径寻址,N度关系查找等

弱项

很多时候需要对整个图做计算才能得出需要的信息,而且这种结构不太好做分布式的集群方案。

四大类NoSQL数据库