Hbase要点简记

Hbase要点简记

Hbase

HBase是一个分布式的、列式的、实时查询的、非关系型数据库,可以处理PB级别的数据,吞吐量可以到的百万查询/每秒。主要应用于接口等实时数据应用需求,针对具体需求,设计高效率的数据查询接口。

1、底层架构

● Master:HBase 管理节点。管理 Region Server,分配 Region 到 Region Server,提供负载均衡能力;执行创建表等 DDL 操作。

● Region Server:HBase 数据节点。管理 Region,一个 Region Server 可包含多个 Region,Region 相当于表的分区。客户端可直接与 Region Server 通信,实现数据增删改查等 DML 操作。

● ZooKeeper:协调中心。负责 Master 选举,节点协调,存储 hbase:meta 等元数据。

● HDFS:底层存储系统。负责存储数据,Region 中的数据通过 HDFS 存储。

2、表逻辑结构

● RowKey(行键):行键是HBase记录条目的主键,物理存储时会按照RowKey的字典序排序存储,HBase基于RowKey实现索引;

● Column Family(列族):纵向切割,HBase中的每个列都归属于某个列族,列族不能改变,一行可有多个列族,一个列族可有任意个列;

● Column(列):一般都是从属于某个列族,跟列族不一样,这些列都可以动态添加。

注意:

● Key-Value(键值对):每一列存储的是一个键值对,Key是列名,Value是列值。通过{行键,列族名,列名}可以唯一确定一个列单元并获取数据Value,和关系型数据库不同的是,HBase中的数据是没有类型的,都是以bytes形式存储;

● Byte(数据类型):数据在HBase中以Byte存储,实际的数据类型交由用户转换;

如果HBase中的一张表只有一个列族的话,等于是这个列族包含了这张表的所有列,也就是将表整行的数据连续存储在了一起,就等于是行式存储了。如果一张表有多个列族,并且每个列族下仅有一列,也就是将表的列数据连续存储在了一起,就等于是列式存储了。

只有一个列族:

每个列族下仅有一列:

相关推荐
武子康3 天前
大数据-36 HBase 增删改查 列族详解 实测
大数据·后端·hbase
武子康5 天前
大数据-34 HBase 单节点配置 hbase-env hbase-site xml
大数据·后端·hbase
武子康6 天前
大数据-33 HBase 整体架构 HMaster HRegion
大数据·后端·hbase
Java烘焙师6 天前
架构师必备:业务扩展模式选型
mysql·elasticsearch·架构·hbase·多维度查询
lifallen9 天前
Paimon vs. HBase:全链路开销对比
java·大数据·数据结构·数据库·算法·flink·hbase
爱吃面的猫9 天前
大数据Hadoop之——Hbase下载安装部署
大数据·hadoop·hbase
viperrrrrrrrrr79 天前
大数据(1)-hdfs&hbase
大数据·hdfs·hbase
BAGAE1 个月前
Flutter 与原生技术(Objective-C/Swift,java)的关系
java·开发语言·macos·objective-c·cocoa·智慧城市·hbase
潘小磊1 个月前
高频面试之12 HBase
面试·职场和发展·hbase
Detachym1 个月前
CentOS7下的大数据NoSQL数据库HBase集群部署
大数据·nosql·hbase