6 fhsch

尚未进行身份认证

暂无相关描述

等级
博文 9
排名 305w+

一种HBase上Region级别的二级索引存储

我们会经常谈及二级索引,这是对全表数据进行另外一种方式的组织存储,是针对table级别的。如果要为HBase上的表实现一个强一致性的二级索引,那么就无法逃避分布式事务,而这一直是用户最期待的功能。而即使只需要保证最终一致性,这个索引也并不好实现,因为你需要额外的表以存储过程数据,需要解决宕机恢复问题等 撇开分布式事务,我们是否可以考虑对索引的要求进行降级,比如把Region看成是全表...

2013-07-19 15:48:47

HBase-0.96中新BlockEncoding算法-PREFIX_TREE压缩的初步探究及测试

PREFIX_TREE(HBASE-4676)是HBase0.96版本中新增加的一种DataBlockEncode算法。 1.什么是PREFIX_TREE关于前缀树的介绍可以参考维基百科http://zh.wikipedia.org/wiki/Trie 当然其的实现会有差别 2.HBase中的DataBlockDataBlock是KeyValue的集合,是Hfi...

2013-04-08 21:24:01

GC trouble on HBase

最近几天一直纠结在HBase的GC问题上,虽然没有质的收获,但也有一些新的心得,对HBase上GC产生的过程有了更深的认识。由于基本采用的都是CMS回收,所以讨论也针对的是CMS回收。GC问题可以简单地归结为YGC停顿过长和FullGC触发。[b][color=red]1.FullGC触发[/color][/b]CMS下触发FullGC的原因:a.Concurren...

2013-04-01 12:14:41

HBase上关于CMS、GC碎片、大缓存的一种解决方案:Bucket Cache

介绍BucketCache前,先对HBase的Cache做个介绍:一.HBase在读取时,会以Block为单位进行cache,用来提升读的性能;二.Block可以分类为DataBlock(默认大小64K,存储KV)、BloomBlock(默认大小128K,存储BloomFilter数据)、IndexBlock(默认大小128K,索引数据,用来加快Row所在DataBlock的定位)三.对于一...

2012-12-20 22:14:02

HBASE启动脚本/Shell解析

常用到的HBase启动脚本有:1.$HBASE_HOME/bin/start-hbase.sh启动整个集群2.$HBASE_HOME/bin/stop-hbase.sh停止整个集群3.$HBASE_HOME/bin/hbase-daemons.sh启动或停止,所有的regionserver或zookeeper或backup-master4.$HBASE_HO...

2012-11-27 17:47:08

【HBase工具】查看解析HFile

查看HFile是HBase本身自带的一个很实用的工具使用也很简单:$${HBASE_HOME}/bin/hbaseorg.apache.hadoop.hbase.io.hfile.HFileusage:HFile[-a][-b][-e][-f][-k][-m][-p][-r][-v]-a,--checkfamilyEnablef...

2012-11-27 10:17:19

【HBase工具】查看解析HLog

查看解析HLog也是HBase本身自带的一个小工具使用很简单:$${HBASE_HOME}/bin/hbaseorg.apache.hadoop.hbase.regionserver.wal.HLogUsage:HLogArguments:--dumpDumptextualrepresentationofpassedoneormorefi...

2012-11-27 10:16:50

HBase 0.94版本新特性、性能优化详解及使用(一)之数据压缩(DataBlock compression,HLog compression)...

众所周知,HBase0.94对性能做了很多优化,记录一下个人对其实现细节及如何更好应用的理解。0.94引入了两个在HBase层的数据压缩:[color=red]一.DataBlockcompression[/color][b]1.1作用[/b]DataBlockcompression指的是对HFilev2中的DataBlock进行压缩,DataBloc...

2012-07-11 18:09:30

对HBase中Bloomfilter类型的设置及使用的理解

[b][color=red]1.[/color]Bloomfilter的原理?[/b]可参考[url]http://hi.baidu.com/yizhizaitaobi/blog/item/cc1290a0a0cd69974610646f.html[/url][b][color=red]2.[/color]Bloomfilter在HBase中的作用?[/b]HBase利用Bloo...

2012-05-15 14:11:05

HBase中数据的多版本特性潜在的意外

HBase做为KeyValue结构存储,在存储上是依照RowKey的字典序进行排序,对于很多应用而言这可能远远不够,好在HBase的数据可以存储多个版本,并且版本可以排序,其理论上最大的版本数目Integer.MAX_VALUE,这在一定程度上简化应用端的设计举个例子,假设现在有一个应用,对用户的每次登录信息(如:时间+IP)进行,并要求可以快速获取指定用户的最近登录信息,如果选用HBas...

2011-11-08 17:01:20

HBase 源码阅读之 读过程及scanner

看过Hbase读流程的代码的同学对scanner这个词应该不会陌生Hbase在读流程时具体是怎么围绕scanner展开的,最近仔细地看了代码后算是弄清了HBase中的scanner实例关系如下图[img]http://dl.iteye.com/upload/attachment/582470/fd15afb3-f24d-3c69-95d0-7b81c9e03a7d.jp...

2011-11-04 17:56:53

HBase The Definitive Guide 阅读笔记

找到了这本书的电子版,有空时边看边记吧

2011-09-16 14:52:22

Hbase 源码分析之 Regionserver上的 Get 全流程

当regionserver收到来自客户端的Get请求时,调用接口publicResultget(byte[]regionName,Getget){...HRegionregion=getRegion(regionName);returnregion.get(get,getLockFromId(get.getLockId()));...}我们看...

2011-09-16 11:20:50

Hbase 源码分析之当regionserver挂掉以后

当Master通过ZK获知Regionserver挂掉以后,通过调用[b][size=large][color=red]expireServer[/color][/size][/b]接口进行处理[code="java"]publicsynchronizedvoidHmaster.ServerManager.expireServer(finalHServerInfohsi){获取s...

2011-09-09 17:03:52
奖章
    暂无奖章