一 为什么会有NOSQL
普通的数据库无法满足大规模的数据处理,ACID无法满足基本需求,所以需要从架构上去改变。NOSQL通过访问缓存来节省查询的开销。
二 什么是Hbase
Hbase是一个面向列存储的分布式存储系统,它的优点在于可以实现高性能的并发读写操作,同时Hbase还会对数据进行透明的切分,这样就使得存储本身具有了水平伸缩性。
面向行存储的数据库主要适合于事务性要求严格场合,或者说面向行存储的存储系统适合OLTP,但是根据CAP理论,传统的RDBMS,为了实现强一致性,通过严格的ACID事务来进行同步,这就造成了系统的可用性和伸缩性方面大大折扣,而目前的很多NoSQL产品,包括Hbase,它们都是一种最终一致性的系统,它们为了高的可用性牺牲了一部分的一致性。
三 Hbase的优缺点
1 列的可以动态增加,并且列为空就不存储数据,节省存储空间.
2 Hbase自动切分数据,使得数据存储自动具有水平scalability.
3 Hbase可以提供高并发读写操作的支持
4 对海量数据高效存储和访问
5 高可扩展性和高可用性,线性扩展
6 表的格式不是固定的,通过键值对存储,减少时间空间开销
7 随机读写
8 当行数小于10000的时候,开销和行数成正比。但是超过50000行时,无论是顺序还是随机的插入操作,性能都会逐渐变好
Hbase的缺点:
1 不能支持条件查询,只支持按照Row key来查询.
2 暂时不能支持Master server的故障切换,当Master宕机后,整个存储系统就会挂掉.
3 没有表与表之间的关联查询
转自 http://www.aboutyun.com/thread-6720-1-1.html
http://www.doc88.com/p-5075902596116.html