HBase BlockCache】的更多相关文章

1. Cache 读写  调用逻辑:  hmaster.handleCreateTable->HRegion.createHRegion-> HRegion. initialize->initializeRegionInternals->instantiateHStore  ->Store.Store->new CacheConfig(conf, family)-> CacheConfig.instantiateBlockCache->new LruBloc…
0 引言 和其他数据库一样,优化IO也是HBase提升性能的不二法宝,而提供缓存更是优化的重中之重. 根据二八法则,80%的业务请求都集中在20%的热点数据上,因此将这部分数据缓存起就可以极大地提升系统性能. HBase在实现中提供了两种缓存结构:MemStore和BlockCache.其中MemStore称为写缓存,HBase执行写操作首先会将数据写入MemStore,并顺序写入HLog,等满足一定条件后统一将MemStore中数据刷新到磁盘,这种设计可以极大地提升HBase的写性能.不仅如此…
背景:我司作为某运营商公司的技术咨询公司,发现有第三方开发公司在使用HBase 1.1.2 (HDP 2.4.2.258版本)一段时间使用正常后,从某一天开始报OOM,从而导致RegionServer宕机. 故障排查步骤 查看 regionserver的log和stdout.由于是突然宕机,log没有任何error信息,stdout 因为自动拉起以及默认启动脚本是重定向覆盖,所以被洗掉了:而oom dump当时还没开启,无任何明显提示信息. regionserver的log中尽管没有发现erro…
BlockCache 首先要明白Block,在HBase里面存储的最小单元:在memstore向硬盘刷的时候,如果目标block的大小+size之后大于MAX_SIZE,将会新创建一个block来存储数据. Block有四种类型:data,meta,index以及bloom:data就是存储数据的block:index和bloom目的都是了高效获取数据的block以及运用bloom算法获得:meta则是存储HFile的基本信息以及表信息(元数据) 为了高效获取数据,HBase设置了BlockCa…
转自:http://blog.csdn.net/u014297175/article/details/47976909 Hbase上Regionserver的内存分为两个部分,一部分作为Memstore,主要用来写:另外一部分作为BlockCache,主要用于读数据:上面一篇文章已经介绍过Memstore,这里主要介绍读取数据的部分,即BlockCache. BlockCache主要提供给读使用.读请求先到memstore中查数据,查不到就到blockcache中查,再查不到就会到磁盘上读,并把…
搭建完<hadoop伪分布式平台>后就开始搭建hbase伪分布式平台了.有了hadoop环境,搭建hbase就变得很容易了. 一.Hbase安装 1.从官网下载最新版本Hbase安装包1.2.3,为了省去编译安装环节,我直接下载了hbase-1.2.3-bin.tar.gz,解压即可使用.(如果此链接下载速度过慢可更换官网其他下载链接) [hadoop@master -bin.tar.gz [hadoop@master /usr/local/hadoop/hbase [hadoop@maste…
hbase(main)::> create 'test_table_region', 'username' row(s) in 1.2150 seconds hbase(main)::> put ' row(s) in 0.0050 seconds hbase(main)::> scan 'test_table_region' ROW COLUMN+CELL column=username:nick, timestamp=, value= row(s) in 0.1370 seconds…
1.概述:最近,有一些工程师问我有关HBase的基本架构的问题,其实这个问题仅仅说架构是非常简单,但是需要理解.在这里,我觉得可以用HDFS的架构作为借鉴.(其实像Hadoop生态系统中的大部分组建的架构原理是类似,不信你往下看) 2.介绍架构 (1)HDFS例子 在这里我以我比较熟悉的HDFS分布式文件系统作为一个例子来简单说明一下.首先我对HDFS的架构做一个简单的说明: HDFS分布式文件系统主要三个组建:NameNode和DataNode以及SecondaryNameNode.Namen…
本文主要是从HBase应用程序设计与开发的角度,总结几种常用的性能优化方法.有关HBase系统配置级别的优化,这里涉及的不多,这部分可以参考:淘宝Ken Wu同学的博客. 1. 表的设计 1.1 Pre-Creating Regions 默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候,所有的HBase客户端都向这一个region写数据,直到这个region足够大了才进行切分.一种可以加快批量写入速度的方法是通过预先创建一些空的regions,这样当数据写入H…
实现目标 Hive可以实时查询Hbase中的数据. hive中的表插入数据会同步更新到hbase对应的表中. 可以将hbase中不同的表中的列通过 left 或 inner join 方式映射到hive 中的一个视图中. Hive map hbase 1,启动hive hbase 在hive hbase服务启动的情况下, $HIVE_HOME/bin/hive --auxpath $HIVE_HOME/lib/hive-hbase-handler-1.1.0-cdh5.7.1.jar,$HIVE…