Hbase原理

  

Hbase流程体系图

  <人力资源/>   

 Hbase原理

  
Hbase写数据流程h5>   <李> 1,客户向hregionserver发送写请求。   <李> 2,hregionserver将数据写到hlog(提前写日志)。为了数据的持久化和恢复。   <李> 3,hregionserver将数据写到内存(memstore)   <李> 4,反馈客户写成功。      
数据冲过程h5>   <李> 1,当memstore数据达到阈值(默认是64美元),将数据刷到硬盘,将内存中的数据删除,同时删除hlog中的历史数据。   <李> 2,并将数据存储到hdfs中。   <李> 3,在hlog中做标记点。      
数据合并过程h5>   <李> 1,当数据达到4块,hmaster将数据块加载到本地,进行合并李   <李> 2,当合并的数据超过256,进行拆分,将拆分后的分区域配给不同的hregionserver管理李   <李> 3,当hregionser宕机后,将和regionserver上的hlog拆分,然后分配给不同的hregionserver加载,修改.META。   <李> 4,注意:hlog会同步到hdfs李      
Hbase读数据流程h5>   <李> 1,通过饲养员和根-。李元。表定位hregionserver。   <李> 2,数据从内存和硬盘合并后返回客户李   <李> 3,数据块会缓存李      
hmaster的职责h5>   <李> 1,管理用户对表的增,删,改,查等操作。   <李> 2,记录地区在哪台服务器上HRegion李   <李> 3,在区域分割后,负责新地区的分配李   <李> 4,新机器加入时,管理HRegion服务器的负载均衡,调整地区分布李   <李> 5,在HRegion服务器宕机后,负责失效HRegion服务器上的地区迁移。      
hmaster的职责h5>   <李> 1,HRegion服务器主要负责响应用户I/O请求,向HDFS文件系统中读写数据,是HBASE中最核心的模块。   <李> 2,HRegion服务器管理了很多表的分区,也就是地区。      
客户职责h5>   <李> 1,HBASE端使用HBASE的RPC机制与HMaster和RegionServer进行通信李   <李> 2,管理类操作:客户与HMaster进行RPC;李   <李> 3,数据读写类操作:客户与HRegionServer进行RPC。      
hbase依赖饲养员h5> 1,保存Hmaster的地址和backup-master地址

  

hmaster:

  
      <李> a)管理HregionServer李   <李> b)做增删改查表的节点李   <李> c)管理HregionServer中的表分配李   
  

2,保存表根——的地址
hbase默认的根表,检索表。

  

3, HRegionServer列表
表的增删改查数据。
和hdfs交互,存取数据。

  

Hbase命令

           名称   命令表达式               创建表   创建的表名”、“列族名1 ','列族名2》,“列族名N '         查看所有表   列表         描述表   描述的表名”         判断表存在   存在的表名”         判断是否禁用启用表   is_enabled的表名”;is_disabled的表名”         添加记录   把“表名”、“rowKey”,“列族:列”、“值”         查看记录rowkey下的所有数据   得到的表名”、“rowKey”         查看表中的记录总数   数的表名”         获取某个列族   得到的表名”、“rowkey”、“列族”         获取某个列族的某个列   得到的表名”、“rowkey”、“列族:列”         删除记录   删除的表名”、“行”名,“列族:列”         删除整行   deleteall的表名”、“rowkey”         删除一张表   先要屏蔽该表,才能对该表进行删除。第一步禁用的表名”,第二步降的表名”         清空表   截断的表名”         查看所有记录   扫描“表名“         查看某个表某个列中所有数据   扫描“表名“,={列在“列族名:列名'}         更新记录   就是重写一遍,进行覆盖,hbase没有修改,都是追加            

到这里hbase的基本原理,和使用命令就写完了。

Hbase原理