【HBase】HBase基本介绍和基础架构

时间:2023-03-09 17:13:45
【HBase】HBase基本介绍和基础架构


基本介绍

概述

HBase是bigtable的开源java版本,是建立在HDFS之上,提供高可靠性高性能列存储可伸缩实时读写nosql数据库系统,主要用来存储结构化半结构化松散数据

HBase查询数据功能很简单,不支持join等复杂操作,不支持复杂的事务(行级的事务)

HBase中支持的数据类型:byte[]

特点

1.:一个表可以由上十亿行、上百万列

2.面向列:面向列(族)的存储和权限控制、列(族)独立检索

3.稀疏:对于为空(null)的列,并不占用存储空间,因此,表可以设计得非常稀疏

HBase和Hadoop的关系

HBase和Hadoop是紧耦合的关系HBase依赖于Hadoop

【HBase】HBase基本介绍和基础架构

如果要运行HBase,一定要保证Hadoop的环境正常运行。

从以上表格可以得出HBase适合频繁的读写操作HDFS不适合频繁的读写操作,更适合一次写入多次读取,但HBase的数据都保存在HDFS上,这样的矛盾点该如何解决?

RDBMS与HBase的对比

【HBase】HBase基本介绍和基础架构

特征

一、海量数据存储

二、列式存储

三、易于扩展,类似于HDFS,加节点就可以我实现HBase扩展

四、支持客户端访问的高并发操作

五、稀疏表,如果某一列没有值,不占用存储空间


基础架构

【HBase】HBase基本介绍和基础架构



HMaster的功能:

1.监控RegionServer

2.处理RegionServer故障转移

3.处理元数据的变更

4.处理region的分配或移除

5.在空闲时间进行数据的负载均衡

6.通过Zookeeper发布自己的位置给客户端



RegionServer的功能:

1.负责存储HBase的实际数据

2.处理分配给它的Region

3.刷新缓存到HDFS

4.维护HLog

5.执行压缩

6.负责处理Region分片