Row-Oriented Database 、Column-Oriented Database 、Key-Value Store Database 、Document-Oriented Databas...

Row-Oriented Database 、Column-Oriented Database 、Key-Value Store Database 、Document-Oriented Database | 出家如初,成佛有余

Row-Oriented Database 、Column-Oriented Database 、Key-Value Store Database 、Document-Oriented Database
Posted 十月 4, 2009 * Comments(3)

在研究Key-Value Database数据库时候,不可避免地遇见了几种类型的数据库划分方式:Row-Oriented Database 、Column-Oriented Database 、Key-Value Database 、Document-Oriented Database,简单总结一下。
1、Row-Oriented Database:

行导向的数据库实际上就是传统的关系数据库(RDBMS),关系数据库的数据是按行来存储的,即把一条记录的所有属性(列)存储在一起。传统关系数据库的典型应用场合是OLTP(On-Line Transaction Processing )领域,这些领域以事务处理为主,包括数据的增加、删除、修改、查询。

key-value store,Row-Oriented Database ,Column-Oriented Database,Document-Oriented Database,行数据库,列数据库,文档数据库


2、Column-Oriented Database:

列导向的数据库的典型应用场合是OLAP(On-Line Analysis Processing),因此以列导向的架构设计非常适合于数据仓库的应用。对于大多数数据仓库的分析场景中,实际关注的数据很多时候都只有那么一列或者少数几列的数据。所以在以列为导向的设计中,大部分的分析查询都只需要读取某一个(或者几个)表的几列,而不需要像传统以行为导向的数据库那样需要扫描整个表的数据,这两者IO量的差距是非常大的。

要理解列导向的数据库可以参考下图(摘自What’s a Column-Oriented DBMS?)。

key-value store,Row-Oriented Database ,Column-Oriented Database,Document-Oriented Database,行数据库,列数据库,文档数据库

参考文章及Wikipedia的划分方法,常见的Column-Oriented Database如下(不一定准确,仅供参考)

http://www.luciddb.org/

http://www.infobright.org/

http://monetdb.cwi.nl/

http://www.equi4.com/metakit/

http://incubator.apache.org/cassandra/ (也可以归成Key-Value Store)

http://hadoop.apache.org/hbase/ (也可以归成Key-Value Store)

http://hypertable.org/ (也可以归成Key-Value Store)

http://kosmosfs.sourceforge.net/ (也可以归成Key-Value Store)

http://www.openneptune.com/ (也可以归成Key-Value Store)

http://www.vermontdatabase.com/rc21home.htm

http://www.jhterbekke.net/XplainDBMS.html

http://db.lcs.mit.edu/projects/cstore/

http://www.ingres.com/vectorwise/

http://cloudbase.sourceforge.net

https://codeforge.lbl.gov/projects/fastbit/


3、Column-Oriented Database VS. Row-Oriented Database

key-value store,Row-Oriented Database ,Column-Oriented Database,Document-Oriented Database,行数据库,列数据库,文档数据库



OLTP, OLAP,key-value store,Row-Oriented Database ,Column-Oriented Database,Document-Oriented Database,行数据库,列数据库,文档数据库
4、Key-Value Store Database

在distributed key-value store 杂思 对一些常见Key-Value Store数据库进行了总结,其实精确来说,不应当都叫Key-Value Store Database,而应当叫做Anti-RDBMS或NOSQL Database。
5、Document-Oriented Database

文档数据库一般用于存储半结构化的数据,在文档数据库中文档是处理信息的基本单位。文档数据库允许创建许多不同类型的非结构化的或任意格式的字段。文档数据库一般采用XML、YAML 、JSON作为存储协议。由于文档数据库中的文档也需要一个唯一的key来标识文档(当然key可以是JSON、XML结构),文档的内容可以看做value,因此一般把文档数据库也归到Key-Value Store Database中,当然所有的XML数据库其实也可以归成文档数据库。

文档数据库很适合CMS、知识库、OA系统,用于存储新闻稿件、电子邮件、书籍、Web页面、多媒体文件等半结构化的数据。

除了Lotus Notes 、Amazon SimpleDB 这样的商用文档数据库外,常见的开源文档数据库:

http://couchdb.apache.org/

http://www.mongodb.org/

http://jackrabbit.apache.org/

http://riak.basho.com/

http://rddb.rubyforge.org/

http://github.com/yrashk/strokedb

http://code.google.com/p/featherdb/

http://code.google.com/p/thrudb/


posted on 2011-10-18 22:18  lexus 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lexus/archive/2011/10/18/2216934.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值