HBase 架构原理
四、HBase 架构原理
核心组件
| 组件 | 作用 |
|---|---|
| HMaster | 管理表、Region |
| RegionServer | 实际存储与读写 |
| Region | 表的水平切分 |
| Zookeeper | 协调与状态管理 |
架构流程简述
- Client 通过 Zookeeper 定位 RegionServer
- RegionServer 处理读写请求
- 数据先写 MemStore
- 再刷写到 HFile(HDFS)
写流程是“先内存、后磁盘”
五、HBase 的存储机制
写流程
Client
↓
WAL(写前日志)
↓
MemStore(内存)
↓(Flush)
HFile(HDFS)
读流程
BlockCache(缓存)
↓
MemStore
↓
HFile
六、HBase Shell 基础操作
1 启动 HBase
start-hbase.sh
进入 Shell:
hbase shell
2 查看表
list
3 创建表
create 'student', 'info', 'score'
4 插入数据
put 'student', '001', 'info:name', 'Alice'
put 'student', '001', 'score:math', '95'
5 查询数据
get 'student', '001'
查询某一列:
get 'student', '001', 'info:name'
6 扫描表
scan 'student'
限制条数:
scan 'student', {LIMIT => 5}
7 删除数据
delete 'student', '001', 'info:name'
8 删除表
disable 'student'
drop 'student'
七、HBase 与关系型数据库对比
| 对比项 | HBase | MySQL |
|---|---|---|
| 数据模型 | 列式 | 行式 |
| Schema | 灵活 | 固定 |
| 扩展性 | 水平扩展 | 垂直扩展 |
| 查询 | RowKey | SQL |
| 事务 | 单行 | 多行 |

浙公网安备 33010602011771号