HBase--写流程
需求:向ns1库的t1表中,rowkey为r6,cf1列族中的name列,写入数据 tom
put 'ns1:t1','r6','cf1:name','tom'
整个写的流程如下:
1、查询zookeeper中的/hbase/meta-region-sever,
找到habase:meta表所在的regionsever
2、请求hbase:meta所在的regionsever发送请求
查询meta表中的region和regionsever的对应关系(下载meta表,缓存到本地,下次本地查找)
3、r6在哪个region
每个 region都有startkey,stopkey,每个region中的rowkey都会进行字典排序,通过startkey,stopkey就知道在那个region
4、根据rowkey所在的region找到regionsever
发送put请求
5、regionsever先将put请求记录到WAL日志文件中,再写入store的memstore中
6、memstore完成返回ack
附图如下: