写在前面

hbase读的速度比写的速度慢,是一个读慢写快的数据库,因为hbase的读的时候要做很多事.

写流程

hbase的写入性能 hbase的读写_hbase的写入性能

1)Client 先访问zookeeper,获取hbase:meta 表位于哪个Region Server。
2)访问对应的Region Server,获取hbase:meta 表,根据读请求的namespace:table/rowkey,查询出目标数据位于哪个Region Server 中的哪个Region中。并将该table 的region 信息以
及meta 表的位置信息缓存在客户端的meta cache,方便下次访问。
3)与目标Region Server 进行通讯;
4)将数据顺序写入(追加)到WAL;
5)将数据写入对应的MemStore,数据会在MemStore 进行排序;
6)向客户端发送ack;
7)等达到MemStore 的刷写时机后,将数据刷写到HFile。

读流程

hbase的写入性能 hbase的读写_Server_02


1)Client 先访问zookeeper,获取hbase:meta 表位于哪个Region Server。

2)访问对应的Region Server,获取hbase:meta 表,根据读请求的namespace:table/rowkey,查询出目标数据位于哪个Region Server 中的哪个Region中。并将该table 的region 信息以

及meta 表的位置信息缓存在客户端的meta cache,方便下次访问。

3)与目标Region Server 进行通讯;

4)将数据顺序写入(追加)到WAL;

5)将数据写入对应的MemStore,数据会在MemStore 进行排序;

6)向客户端发送ack;

7)等达到MemStore 的刷写时机后,将数据刷写到HFile。