HBase 作为 Apache 基金会的 Hadoop 项目的一部分,将 HDFS 作为文件存储系统,使用 MapReduce 进行分布式的数据批量处理(非实时数据批量处理)、利用Zookeeper提供协同管理服务,为 Hadoop 提供海量数据管理服务,因此,HBase也是在一个服务器集群上运行的。
HBase主要适用于海量明细数据(十亿、百亿)的随机实时查询,如日志明细、交易清单、轨迹行为等。因此,实时数据查询和处理是HBase主要功能,用来进行数据实时计算的是Flink或sparkstreaming。
1. HBase优点
HBase=Hadoop Database,是一个高可靠性、高性能、面向列、高扩展性、稀疏的、由行键列键和时间戳进行索引的多维有序映射的分布式存储数据库。HBase与Hadoop的关系密不可分,HBase利用HDFS作为其文件存储系统、利用MapReduce来处理HBase中的海量数据、利用Zookeeper提供协同管理服务。
1.高容量、高性能、高扩展性
HBase 的单表可以有百亿行、百万列,可以在横向和纵向两个维度插入数据,具有很大的弹性,容量极高。
当关系型数据库的单个表的记录在亿级时,查询和写入的性能都会呈现指数级下降,这种庞大的数据量对传统数据库来说是一种灾难,而 HBase 在限定某个列的情况下对于单表存储百亿甚至更多的数据,保持高性能。
HBase可以通过部署廉价的服务器集群实现大规模数据存储,扩展性极高。
2.列存储
关系型数据库是面向行存储的,而HBase数据库面向列存储,如下图所示:

行存储,表的所有数据都放在一起,方便数据的插入与更新;但对于表数据查询,行存储会读取所有数据进行查询,但列存储只需要读取相应的查

最低0.47元/天 解锁文章
1158

被折叠的 条评论
为什么被折叠?



