HBase 的存储结构
2023-09-27 14:25:06 时间
HBase 的存储结构
HBase 中的表常常是超级大表,这么大的表,在 HBase 中是如何存储的呢?
HBase 会对表按行进行切分,划分为多个区域块儿,每个块儿名为 HRegion
HBase 是集群结构,会把这些块儿分散存储到多个服务器中,每个服务器名为HRegionServer
服务器多了,就需要一个管理者 HMaster,负责 HRegion 的分配、HRegionServer 负载均衡的处理 等事务
当某个 HRegion 的大小达到阈值后,便会被分割开来,新的 HRegion 也会由 HMaster 进行分配,放置到合适的 HRegionServer 中
HRegion 是 HBase 中分布式存储的最小单元,但并不是存储的最小单元
HRegion 内部会按照列族进行切分,分为多个 Store,每个 Store 保存一个列族,所以 HRegion 由一个或者多个 Store 组成
每个 Strore 又由一个 MemStore 和 N个 StoreFile 组成
MemStore 是内存存储单元,当内存中数据达到阈值后,写入 StoreFile,StoreFile 以 HFile 格式保存
HBase 数据的物理存储是基于 Hadoop 的分布式存储的
这样,综合起来便形成了 HBase 的整体架构图
相关文章
- 大数据-NoSQL数据库:HBase【基于Zookeeper/HDFS的分布式、高并发、可扩展的NoSQL数据库;支持“十亿行”ד百万列”海量数据的实时随机读写;仅支持单表查询;不擅长数据分析】
- 云时代的大数据存储-云HBase
- 一文读懂Hadoop、HBase、Hive、Spark分布式系统架构
- 基于HBase做Storm 实时计算指标存储
- HBase BlockCache系列 - 探求BlockCache实现机制
- Java Hbase查询接口条件正确查询不到踩坑记录,查询大小写不敏感,存储必须小写
- HBase二级索引
- hbase大规模数据写入的优化历程
- hbase操作(shell 命令,如建表,清空表,增删改查)以及 hbase表存储结构和原理
- hive中与hbase外部表join时内存溢出(hive处理mapjoin的优化器机制)
- hive的数据导入与数据导出:(本地,云hdfs,hbase),列分隔符的设置,以及hdfs上传给pig如何处理
- HBase Master 启动
- 大数据HBase(九):Apache Phoenix的安装
- HADOOP之HIVE+MYSQL,HBASE+ZOOKEEPER