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

只有一个列族:

每个列族下仅有一列:

相关推荐
BAGAE5 天前
星链卫星数据获取:从太空安全到实时通信的技术革命
网络·数据结构·数据库·算法·云计算·hbase
JAVA面经实录9179 天前
HBase 知识点梳理(文档型 NoSQL)
大数据·数据库·nosql数据库·hbase
大大大大晴天11 天前
Flink-HBase生产问题排查:NoClassDefFoundError
flink·hbase
大大大大晴天️11 天前
Flink-HBase生产问题排查:NoClassDefFoundError
大数据·flink·hbase
muddjsv16 天前
HBase与Hadoop:基于什么开发?深度剖析与架构图
数据库·hadoop·hbase
muddjsv16 天前
HBase 与 Hadoop 安装与上手使用全指导
数据库·hadoop·hbase
段一凡-华北理工大学17 天前
工业领域的Hadoop架构学习~系列文章09:HBase列式数据库
数据库·人工智能·hadoop·架构·hbase·高炉炼铁·高炉炼铁智能化
muddjsv17 天前
Hadoop 与 HBase 深度剖析:从架构原理到实战应用
hadoop·架构·hbase
Irene199117 天前
(AI总结版)Docker + HBase 安装全过程总结(WSL2 + Win11)
docker·hbase
Irene199118 天前
Win11 安装 Docker Desktop 并配置 WSL 使用 Hbase
docker·hbase