Hbase学习总结

在这里插入图片描述
Hbase:基于Hadoop和Zookeeper的一个非关系型结构化数据的存储框架。

Hbase特点:
可扩展:增加服务器数据即可(增加RegionServer)
存储数据的稀疏性:列值可有可无
海量:可存大量数据
高可靠:基于Hadoop(有副本机制)

Hbase主要组成:Hmaster和RegionSever

Hmaster作用:
为RS分配Region,维护整个集群的负载均衡
监控Region,当其失效时,将失效的Region分配给其他的RS

RegionServer作用:
响应客户端的读写请求(与Hmaster无关,杀掉hmaster进程,用户照样进京读写,不过这样会使集群处于不健康的状态)
负责文件的合并于拆分
将文件存储到HDFS(Flush条件:1.整个RS内存到达总内存的40% 2.到达一定的时间)

Cell单元格:
1.当出现多个cf时,不同的cf下不同的cn然后不同的版本以及value共同组成一个cell单元格
2.当只有一个cf时,cn下的不同的版本对应一个cell

namespace命名空间:
存储表的头(一个命名空间下包含多个表),一般用于不同的业务线

Hbase读数据原理:
首先,客户端向Zookeeper发起查询某表请求,然后Zookeeper响应请求,并返回给客户端具体的表存储在哪个RS上,然后客户端再去到具体的RS上进行数据读操作。(读的方式是先内存后磁盘(有缓冲区(经常读取的数据)))。

Hbase写数据原理:
首先客户端向Zookeeper发起表的写数据请求,然后Zookeeper会响应你这张表在具体的哪个RS上,然后用户在进行写操作,写的顺序是:Hlog会记录你写的数据流(以便数据丢失),然后再写到内存中,在写入磁盘存到HDFS上。

Hbase与Hive集成:
创建一个关联表(Hive和Hbase都有),例如Hbase中有emp这张表(有数据),然后Hive中也有数据,然后利用hive进行分析

Hbase优化:

预分区:就是提前设置好分区个数,再将数据表存入到其中。分区键的设置与RowKey的设置密切相关。分区原则遵循:数据散列性 Rowkey设置原则:值唯一性,长度唯一性,

内存优化:
表的数据可以存到内存中,但是内存不宜过大和过小。过大会拖垮服务器,过小影响操作效率

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值