加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

图解HBase--大数据平台技术栈

发布时间:2019-07-31 18:26:17 所属栏目:教程 来源:架构师公社
导读:HBase简介 HBase是一个分布式的、面向列的开源数据库存储系统,是对Google论文BigTable的实现,具有高可靠性、高性能和可伸缩性,它可以处理分布在数千台通用服务器上的PB级的海量数据。BigTable的底层是通过GFS(Google文件系统)来存储数据,而HBase对应的

当MemStore达到hbase.hregion.memstore.flush.size大小的时候会将数据刷写到磁盘,生成StoreFile。随着业务的发展,数据量会越来越大,会产生很多的小文件,对于HBase的数据读取,如果要扫描大量的小文件,会导致性能很差,因此需要将这些小文件合并成一个大一点的文件。

所谓的小合并,就是把多个小的StoreFile组合在一起,形成一个较大的StoreFile,通常是累积到3个SotreFile后执行。通过hbase.hstore.compationThreadhold参数配置,小合并的步骤如下:

  • 分别读取出待合并的StoreFile文件的KeyValues,并顺序地写入到位于/hbase/.tmp目录下的临时文件中;
  • 将临时文件移动到对应的Region目录中;
  • 将合并的输入文件路径和输出路径封装成KeyValues写入WAL日志,并打上compaction标记,最后强制执行sync;
  • 将对应region数据目录下的合并的输入文件全部删除,合并完成。

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读