HBaseConAsia2017 PPT解读(上)

主会场的两个Talk

HBase-2.0.0 by Michael Stack
Stack是HBase的Team Leader,分享了HBase2.0.0分支的一些最新进展。对于最新的HBase2.0分支,HBase1.x 的客户端是能正常访问HBase2.0服务端的,但是admin是无法访问的(coprocessor也需要做相关更新)。HBase2.0解决了超过4400个issue,只能使用jdk8运行,要求hadoop至少在2.7.1版本之上。
核心功能包括:AssignManagerV2可以支持更多的region,更快启动(状态持久化在hdfs上,而不是zk),不再需要hbck。读写路径offheap。in-memory compaction,新的异步客户端。
其他功能包括:  MOB/rsgroup/wal和hfile存储到不同的文件系统/c/s通信接入netty框架。
目前正在搞的一些issue主要有:C++客户端/HBase备份恢复/混合逻辑时钟等等。
 
HBase Practice At XiaoMi  by huzheng
作为本次会议主会场的两个session之一,小米分享了他们在异步客户端和g1gc调优所做的一些工作。

同步客户端存在两个问题,一个是单线程场景下需要阻塞等待上一个返回值,吞吐不及异步客户端,另一个问题就是存在故障放大的问题,简单来说就是业务的多个handler同时访问hbase的一个卡住的regionserver的时候,业务的这部分handler都会卡住,业务的可用性要比hbase的可用性低很多。而异步客户端没有上述两个问题,这是它的优势。小米对asyn hbase client做的性能测试显示,在latency方面异步客户端至少不比同步客户端差。

小米分享的另外一个话题是HBase+G1GC调优。G1GC相比CMS的优势在于,通过多次增量的mixed gc分摊式的回收老年代对象,从而有能力完全避免掉full gc的发生,所有G1能提供稳定的延迟和吞吐,对可用性要求很高的HBase业务比较友好。另外,G1是采用增量式GC,而CMS每次gc都要扫整个堆,所以G1更加适合大堆场景。  后续,小米给出了他们如何调G1的一个案例,感兴趣的同学可以跟着测试一下。

1 个评论

还有spark模块

要回复文章请先登录注册