ITPub博客

首页 > 大数据 > Hadoop > NoSQL 数据库三类数据模型

NoSQL 数据库三类数据模型

Hadoop 作者:胖胖小生 时间:2014-02-16 22:44:39 0 删除 编辑

随着 web 应用的普及与数据量的爆炸性增长,NoSQL 已成为目前产业界和学术界研究的热点,也涌现了一些具有显著特色的NoSQL 数据库系统。其中最有代表的是 Google 的 Bigtable 系统、Hadoop 的子项目 Hbase 、Amazon公司的 Dynamo 系统、Yahoo 的 PNUTS 等等。传统的数据库模型主要是关系型的,主要支持 ACID 事务,但是 NoSQL 数据库包含的以下三类数据模型。(1)Key-value 数据模型:是一个 key 值对应一个 value值,尽管这个模型很简单,但是它的查询速度却比关系型数据库要高很多,并且可以支持大规模的数据存储和高并发性,非常适合通过主键的查询和修改的操作。虽然不支持复杂的操作,但是可以通过上层的开发来弥补这个缺陷。Redis、Voldemort为该类数据库的代表。(2)Column-oriented 数据模型:列存储数据库使用表格模型,但是不支持表格之间的连接。列存储数据库主要有以下的特点:a)数据的存储是以列为单位的,对每列分别进行存储。b)数据的每列是数据库的索引。c)每次的查询只是对每列进行查询,从而减少了系统的 I/O。d)对于并发式的查询,每列只能进行一个进程的查询。e)数据库将相同的数据类型,相似特性的列存放在一起,这样可以提高列存储和查询的速度。列数据有着高的压缩率。这个数据模型的优势是更加适合数据汇总和数据仓库等类型的应用。Google 的 Bigtable、HBase、Hypertable、Cassandra 均为该类数据库。(3)文档(Document)数据模型:Document 数据库和key-value 数据库模型在结构上非常相似,但是 Document 数据库的 Value 值存储的是语义,类型是 JSON 或者 XML。另外,Document 类型的数据库可以对 value 使用二次索引来方便上层的应用,这点是 key-value 数据库所不支持的。

<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24073210/viewspace-1119844/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2010-06-11

最新文章