
[] : HBase客户端连接HBase集群进行数据读写的流程[写流程] : -> Client 访问 zookeeper, 从Region中获取表信息 -> -> 根据namespace、表名和rowkey根据meta表的数据找到写入数据对应的RegionServerID -> 通过RegionServerID定位到region[读流程] : Client 请求访问 zookeeper, 获取meta表信息 -> 通过meta表中的 Rowkey,tableName,TimeStamp 定位到 RegionID -> 通过这个RegionID查找到相对应的RegionServer -> 查找到RegionServer中,先查找MemStore(写缓存),如果查不到,再进入BlockCache(读缓存)中查询,如果查不到,再进入StoreFile中查(依据StoreFile的索引查),并把结果放在BlockCache中// HBase客户端进行数据读写不会接触到HMaster, 只会接触到zookeeper集群和和所有的regionserver节点
[RegionServer端口] : 默认的RegionServer端口是16020<property> <name>hbase.regionserver.port</name> <value>16020</value></property>[客户端 /etc/hosts] : HBase客户端通过zookeeper获取到regionserver的节点名和端口 // slave1:16020,slave2:16021,slave3:16022 // 会解析本机的/etc/hosts文件, 获取slave1, slave2, slave3的IP地址59.69.101.206 slave159.69.101.206 slave259.69.101.206 slave3<property> <name>hbase.zookeeper.quorum</name> <value>59.69.101.206:42181,59.69.101.206:42182,59.69.101.206:42183</value></property>[配置路由器] : 给zookeeper和regionserver节点配置端口映射59.69.101.206:12181 zookeeper1.ip:218159.69.101.206:12182 zookeeper2.ip:218159.69.101.206:12183 zookeeper3.ip:218159.69.101.206:16020 slave1.ip:1602059.69.101.206:16021 slave2.ip:1602159.69.101.206:16022 slave3.ip:16022// RegionServer192.168.0.180 16020192.168.0.74 16021//