分布式数据库HBase知识点总结

Hbase概述

Hbase是一个可以进行随机存取和检索数据存储平台

Hbase的特性

1.容量巨大

2.数据类型简单:所有半结构化和非结构化数据在Hbase中被序列化为字节数组,根据需要解析为不同的数据类型

3.列式存储:数据基于列族存储,同一列族的数据集存储在几个文件中

4.稀疏表:Hbase表中的单元格不占用存储空间

5.数据多版本:每个单元格的数据可以有多个版本,时间戳是单元格的版本号

6.数据操作简单:只存在数据插入,查询,删除,清空等操作,更新数据是生成一个新的版本数据,数据删除的本质是插入带有删除标记的数据

Hbase数据模型

Hbase基本概念

确定一个单元值:行键+列(列族:列族限定符)+版本唯一

1.Namespace(命名空间)

Hbase中的命名空间是表的逻辑分组,有两个预定义命名空间:hbase和default,hbase是系统命名空间,所有Hbase内部表都属于hbase命名空间,其他没有显示指定命名空间的表,都自动归属于default命名空间

2.Table(表)

3.Row key(行键)

每一行由行键来唯一标识,类似于主键

访问表中数据的3种方式:①通过单个行键;②通过一个行键的区间;③全表扫描

行键可以是任意字符,最大长度是64KB

在Hbase内部,行键保存为字节数组,在存储时,数据按行键的字典顺序排序存储

4.column(列)

列族:列族限定符

列族要在创建表模式时指定,使用表之前定义,列族限定符可以在数据操作时动态指定

5.column Family(列族)

每个列族可以包含任意个列族限定符

Hbase支持基于列的随机访问的原因:数据存储是以列族为单位进行的,同一个列族成员集中存储在一起

列族数量不要超过两个,过多列族会影响系统性能

6.column Family Qualifier(列族限定符)

列族里的数据通过列族限定符来定义

(7)Cell(单元格)

确定一个单元格:行键+列族+列族限定符

单元格存储的数据没有数据类型,是未经解释的字节数组byte[]

数据可以多版本

(8)版本(Version)

单元格中数据可以多版本,长整型(Long Integer)数据标识

默认采用时间戳来标识单元格的版本

9.主键和索引

行键是行的唯一标识,行键就是主键

确定一个值的索引:行键+列族+列族限定符+版本

概念视图

一个表可以是稀疏,多维的映射关系

HBase体系结构

Hbase采用主从服务器结构(Master/Slave):一个HMaster服务器+多个HRegionServer

HMaster服务器负责管理所有的HRegionServer

HRegionServer负责存储许多Region

每一个Region是HBase表的一个分块

ZooKeeper协调HBase中的所有服务器,并处理各个服务器在运行期间可能遇到的错误

1.Client

Client使用HBase RPC机制与Hmaster服务器和HRegionServer进行通信

①对管理类的操作:Client与HMaster服务器进行RPC

②对数据读写类的操作:Client与HRegionServer进行RPC

③Client缓存Region位置,以便提高对HBase的访问效率

2.ZooKeeper

①通过选举机制保证任何时候HBase集群中只有一个HMaster服务器,避免HMaster服务器单点问题

②实时监控各个HRegionServer的健康状况,发现HRegionServer宕机,及时通知HMaster服务器进行处理

③存储HBase目录表hbase:meta,它包含所有Region的列表

3.HMaster

在HBase中可以启动多个HMaster服务器只有一个处于运行状态,其他处于备用状态

HBase服务器的功能:

①管理表:创建,修改,删除,对表进行上线和下线

②负载均衡,周期性地检查集群,及时调整Region分布

③在Region分裂后,负责新Region分布

④在HRegionServer停机后,负责失效HRegionServer上Region的迁移工作

4.HRegionServer

HBase数据库的所有数据保存在HDFS中,用户通过一系列HRegionServer获取这些数据

一台机器上只运行一个HRegionServer

每个HRegionServer可以维护多个Region

每个区段的Region只能被一个HRegionServer维护

①HRegionServer主要负责响应用户的I/O请求,向HDFS读取数据

②HRegionServer内部管理一系列Region,每个Region由多个Store组成

  每个Region对于HBase表中的一个Region,每个Store对应表中一个列族的存储

③HRegionServer内部管理一个HLog,HLog存储数据日志,当HRegionServer发生故障,利用HLog进行故障恢复

5.Region

表初建只有一个Region

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值