HBase基本介绍
4.86 MB
33 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
中文(简体) | .pdf | 3 |
摘要 | ||
文档介绍了HBase的基本概念和架构,包括其数据模型、存储机制以及系统组成。HBase是一种分布式、面向列的非关系数据库,支持大规模数据的随机实时读写。其数据模型包括表、行、列三层结构,Row Key类似于关系数据库的主键,但需用户自定义。ColumnFamily用于分类管理列, 每个列名由列族名和列限定名组成。HBase支持多版本数据存储,版本由时间戳标记。系统架构包括HMaster、RegionServer、Zookeeper和Hadoop节点,数据存储在HDFS上。 | ||
AI总结 | ||
《HBase基本介绍》
Apache HBase™ 是一种分布式、面向列、版本化的非关系型数据库,旨在存储结构化数据,支持随机实时读写操作,适用于大数据存储与处理。HBase 的目标是在大量廉价硬件的集群上托管非常大的表,处理高达数十亿行和数百万列的数据。
表的概念:HBase 的基本数据组织单位是表,每张表由行和列组成。行由唯一的行键(Row Key)标识,类似关系型数据库的主键,但需手动定义。列被组织成列族(Column Family),每个列族包含多个列限定名(Column Qualifier)。列名由列族名和列限定名组成,格式为“列族名:列限定名”。
HBase 提供版本控制,每个单元格可以存储多个版本的数据,版本由时间戳管理。
HBase 架构:
1. **HMaster**:负责管理和协调 RegionServer,处理 schema 元数据操作(如表创建、删除)。
2. **RegionServer**:处理数据存取操作,管理 Region。每个 Region 对应表的一部分数据,按行键范围划分。
3. **Zookeeper**:协调节点,管理集群状态,维护 Region 与 RegionServer 的映射关系。
4. **HDFS**:HBase 的存储层,数据以 HFile 形式存储在 HDFS 中。RegionServer 和 DataNode 尽量部署在同一节点以优化数据访问效率。
读操作流程:
- 检查 BlockCache,若数据未 flushing 则从 MemStore 获取,否则从 HFile 中加载数据。
- BlockCache 加载索引,定位数据位置。
Compact:
- **Minor Compaction**:合并小文件,保留最新版本数据。
- **Major Compaction**:清理历史版本数据,合并 Region 内所有 HFiles,形成一个列族级 HFile。
HBase 适用于实时数据处理、分布式系统、KV 存储、时空数据处理、OLAP 等场景,生态系统包括 Phoenix(SQL 接口)、Kylin(OLAP)、JanusGraph(图数据库)等项目。 |
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
26 页请下载阅读 -
文档评分