Hbase架构
文章目录
HBase有三个主要组成部分:客户端库,主服务器和区域服务器。
1. Client
- 定义:客户端
- 客户端的连接方式
- shell命令:hbase shell
- 类JDBC(ODBC)
- API实现(以JavaApi为例)
- Hbase提供了Java的API来操作表与列簇等信息,它的shell就是对Java的API做了一层封装。
- Hbase的Java API提供了很多高级的特性
- 元数据管理,列簇的数据压缩,region分隔
- 创建,删除,更新,读取 rowkey
- 发送的请求主要包括
- DDL:数据库定义语言(表的建立,删除,添加删除列族,控制版本)
- DML:数据库操作语言(增删改)
- DQL:数据库查询语言(查询–全表扫描–基于主键–基于过滤器)
- 客户端必要的时候会对数据进行一些缓存
- 下次查询或者什么的时候更快一点
- 比如缓存regione的位置信息
2.HMaster
- 定义:HBase集群的主节点
- HMaster也可以实现高可用(active–standby)
- 通过Zookeeper来维护主副节点的切换
- 作用
- 负责接收客户端的请求(仅限于DDL)
- 为Re