task3 Hbase计算

实现原理

HBase由连接客户端的库函数、一个master服务器和许多region服务器组成。

master维护数据存放信息,分配管理region和负载均衡;region负责实际的读写。

其中的一个表可以分为多个region。

为了定位region需要三层查询,zookeeper文件 -》-ROOT- -》 .META. -》 region。

  • zookeeper文件,记录了-root-的位置信息

  • root 只能又一个region存储,并且位置固定。

  • meta 可以又多个region存储,记录的是region服务器和region的对应关系,存储在内存中。

运行机制

Store是region运作的核心

参与要素:Store、MemStore、Hlog、StoreFile

写数据过程:先写入到MemStore和Hlog中,Hlog写完之后会通知客户端

读数据过程:先访问MemStore没有再从StoreFile中找。

缓存刷新过程:定期将MemStore数据写入StoreFile,记录Hlog,每次刷写都产生新的StoreFile

StoreFile维护过程:storefile数量太多会影响性能,可以将多个合并,也可以将一个大的进行region拆分。

性能优化
  • 行键:由于数据是按照行键排序的,可以将常用的数据放得更近一些。

  • 利用内存:创建表的时候可以将表放到region服务器的缓存中,提高缓存命中率

  • 按版本保留,设置保留数据最近的几个版本,太老的数据可以清理掉

  • 按时间保留,设置数据的最长存活时间,超出清理。

遇到问题

  • 执行jps时缺少Hmaster和HRegionServer进程

上面配置中Hbase的Hbase-site.xml配置的hdfs路径配置有问题 修改后即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值