http://blog.sina.com.cn/s/blog_636415010101945l.html
原文: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数据库的更多相关文章

  1. NoSQL数据库

    NoSQL数据库 1.NoSQL简介 最初表示"反SQL"运动,用新型的非关系型数据库取代关系数据库:现在表示"Not only SQL"关系和非关系型数据库各 ...

  2. NoSQL数据库的认识

    SQL数据库和NoSQL数据库介绍 什么是SQL数据库? 关系型数据库是依据关系模型来创建的数据库.而所谓的关系模型就是“一对一.一对多.多对多”等关系模型,这是一种二维表格模型,因此一个关系型数据库 ...

  3. Nosql数据库的四大分类及分布式数据库CAP原理

    1. Nosql数据库的四大分类 2. 分布式数据库CAP原理 2.1 关系型数据库事务遵循的ACID规则 首先了解传统关系型数据库事务遵循的ACID规则: 原子性(Atomicity):事务里的所有 ...

  4. 大数据技术原理与应用【第五讲】NoSQL数据库:5.3 NoSQL的四大类型

    5.3 NoSQL的四大类型   5.3.1 键值数据库和列族数据库 可以分为四大类产品:键值数据库,列族数据库,文档数据库,图数据库 (代表)   1.键值数据库:   用的多:redis云数据库: ...

  5. 解读NoSQL数据库的四大家族

    在目前的企业IT架构中,系统管理员以及DBA都会考虑使用NoSQL数据库来解决RDBMS所不能解决的问题,特别是互联网行业.传统的关系型数据库主要以表(table)的形式来存储数据,而无法应对非结构化 ...

  6. 转:走近NoSQL数据库的四大家族

    在目前的企业IT架构中,系统管理员以及DBA都会考虑使用NoSQL数据库来解决RDBMS所不能解决的问题,特别是互联网行业.传统的关系型数据库主要以表(table)的形式来存储数据,而无法应对非结构化 ...

  7. NoSQL数据库的四大分类的分析

    分类 Examples举例 典型应用场景 数据模型 优点 缺点 键值(key-value) Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB 内容缓 ...

  8. 数据库 --> 8种NoSQL数据库对比

    8 种 NoSQL 数据库对比 NoSQL是一项全新的数据库革命性运动,NoSQL的拥护者们提倡运用非关系型的数据存储.现今的计算机体系结构在数据存储方面要求具备庞大的水平扩展性,而NoSQL致力于改 ...

  9. NoSQL 数据库概览及其与 SQL 语法的比较

    NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用的难题. 本文对NoSQL数据库的定义.分类.特征.当前比较流行的NoSQL数据库系统等进行了简单的介绍,并对N ...

随机推荐

  1. 3-this关键字

    1.表示类中的属性和调用方法 package com.example; /** * Created by Y on 16/4/13. */ public class People { private ...

  2. 分离JavaScript

    分离JavaScript类似于使用style属性,在HTML文档里使用诸如onclick之类的属性也是一种既没有效率又容易引发问题的做法.如果我们用一个"挂钩",就像CSS机制中的 ...

  3. winServer2008下安装SqlServer2008数据库

    1 安装文件包 文件名 cn_sql_server_2008_r2_enterprise_x86_x64_ia64_dvd_522233.iso SHA1 0EEFF017B21635DF33F33C ...

  4. delphi 程序输出文件夹存放位置

  5. java 访问后台方法顺序混乱

    今天遇到后台接值顺序混乱的问题. 环境:前台ajax请求后台方法.前台页面会频繁访问这个ajax. 现象:访问后台方法的顺序混乱. 怎么发现的问题:数量小访问没有问题,今天压力测试发现的问题. 解决办 ...

  6. js导航栏样式变换

    <script type="text/javascript"> $(function(){ var lis = $(".submenu").chil ...

  7. retrofit2学习

    http://www.cnblogs.com/wondertwo/p/5838528.html  使用要点

  8. CodeForces 707C Pythagorean Triples

    数学,构造. 这题比较有意思,一开始没发现结论写了一个最坏复杂度为$O({10^9})$暴力居然能$AC$,正因为如此,我才发现了规律. 一开始是这么想的: 先假设$n$为直角边,设斜边长度为$c$, ...

  9. 一个快速、高效的Levenshtein算法实现——代码实现

    在网上看到一篇博客讲解Levenshtein的计算,大部分内容都挺好的,只是在一些细节上不够好,看了很长时间才明白.我对其中的算法描述做了一个简单的修改.原文的链接是:一个快速.高效的Levensht ...

  10. Python基础(十)-模块

    模块初识 一般把不同功能代码放到不同py文件,一个py文件就是一个模块 三种模块库: 1.Python标准库 2.第三方库 3.自定义库 导入模块:import 库名 (Python解释器只认识执行文 ...