天天看点

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

hbasecon是apache hbase官方举办的技术会议,主要目的是分享,交流hbase这个开源分布式大数据存储的使用和开发以及发展。hbasecon发起于2012年。通常hbasecon的举办地是在美国,这是hbasecon第一次在亚洲举行,命名为apache hbasecon 2017 asia。而且这次会议举办地选择在中国深圳,也足以见得hbase在中国的火爆程度和中国开发者们对hbase社区所做的卓越贡献。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

apache hbase是基于apache hadoop构建的一个分布式、可伸缩的key-value数据库,它提供了大数据背景下的高性能的随机读写能力。做为最早研究、使用和二次开发hbase技术的中国公司,阿里巴巴从2010年就开始使用hbase,经过近7年的发展,现在采用hbase存储的业务已经超过1000+,拥有了上万台的hbase集群规模,在hbase上存储的数据已达pb级。秉承开源和分享的精神,阿里把hbase的实践经验和改进不断回馈hbase社区,比如说bucket cache和reverse scan等功能,给hbase技术发展带来了非常深远的影响。同时,也给hbase社区培养了2名pmc和2名committer,阿里在hbase社区的影响力可见一斑。那么这次hbasecon 2017 asia。阿里派出了一位hbase pmc和2位committer,还有两位资深的hbase开发,给大家带来了十足的干货。

阿里干货系列

一、强同步复制

传统的hbase主备集群同步使用的方案是异步复制,这使得主备集群数据之间会有短暂的数据不同步现象。用户为了灾备,不得不放弃强一致模型。没法放弃强一致语义的用户,必须自己写一套复杂的逻辑来保证主备集群之间数据的读写一致性。阿里的hbase技术专家天引,在此次的hbasecon asia上给大家带来了强同步复制方案。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

据天引介绍,强同步复制方案采用了主备并发写和remotelog技术,使得在同城网络条件下同步复制相对于异步复制仅有2%的吞吐量下降。当一个请求到达主库后,并发写本地和备库,到达备库的同步写不需要走完整的写入路径,而是直接写入remotelog,降低同步写开销与延时。除了同步链路外,还有一套异步链路将数据从主库复制到备库,因此正常情况下不需要回放remotelog的数据到备库,在主库不可服务的情况下,只需要回放remotelog中那些还没有被异步复制链路同步到备库的数据,异步复制只有几秒钟的数据延迟,这保证了可以在很短的时间内完成从主库到备库的切换。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

此方案在大会现场引起了强烈反响,很多hbase用户表示这是他们期待已久的功能,希望能尽快使用上。天引表示此功能目前基于阿里内部分支实现、运行及完善,未来将会回馈给社区。

二、sql on hbase

阿里hbase服务了大量的内部用户,并持续有新用户接入。但是使用hbase的用户有很大一部分是从传统的sql数据库转过来的,hbase的rowkey设计和api的使用习惯对于他们来说并不友好。为了降低这些转型用户的使用门槛,阿里在hbase上引入了sql层。来自阿里的资深hbase开发工程师天穆,给大家详细讲解了如何玩转sql on hbase。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

通过优化,现在在阿里使用sql访问hbase和原生api的速度已经相差无几,而且在sql语法上,创造性地支持hbase多版本和时间戳等nosql才具有的功能。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

另外,在hbase上同时支持了全局二级索引和本地二级索引。使用户可以在多列上建立索引,简化了业务的设计,提升了请求效率,降低了使用成本。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

三、跨集群分区拷贝

hbase上通常承载着海量的数据,而在日常生产过程中,随着业务的发展和公司数据中心的规划等原因,这些海量数据需要经常搬迁,这通常对于运维来说是一个非常头疼的问题。来自阿里的hbase社区committer正研,分享了阿里跨集群分区拷贝的场景和成熟解决方案。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

正研首先介绍了在阿里内部常见的需要数据拷贝的场景,比如说新建数据中心,hbase集群需要整体搬迁到新的机房;又比如说不同机房内的hbase集群的增量数据同步,可以用replication来解决,但是对于存量数据,目前还没有比较高效的方案;另外还一个常见场景就是数据恢复,而传统的hbase备份还原工具都没法控制数据恢复的范围。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

因此,阿里研发了range data copy功能内置在hbase中,提供了一个简单高效,而且能够自动处理各种错误情况和灾难恢复的数据拷贝功能,使用这个功能拷贝一张200tb的表到另外一个集群,所需时间不到5小时。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

四、读写链路优化

在阿里使用hbase的过程中,对hbase本身做了非常多的读写性能优化。来自阿里的hbase社区pmc绝顶和committer天照,一起给大家分享了阿里在这方面所取得的一些成果。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

1、使用netty替代hbase原生的rpc server,大大提升了hbaserpc的吞吐能力,降低了延迟 ;

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

2、 引入新的hfileblock编码格式,把顺序搜索变成了二分查找,提高了hbase随机读的能力

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

3、拆分写链路,释放阻塞的handler资源,提高了hbase写的吞吐能力 ;

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

来自阿里的这些优化黑科技,使hbase的能力又更上一个新台阶。并且这些优化和功能目前已经回馈给了社区,所有的hbase用户都能在新版本的使用获得这些技术红利。

总结

除了阿里带来的技术分享,现场许多其他公司也都带来了他们对hbase做出的改进和使用经验。比如说小米实现了asyncclient,填补了hbase没有原生异步api的缺口;知乎使用kubernetes自动扩容缩容hbase集群,灵活地适应业务高速发展和瞬息万变;烽火网络隔离读写资源使近线查询更加稳定等等。

除了上述提到的这几个亮点技术分享,此次hbasecon大会的每一个session都非常精彩,给大家带来了一场又一场思维碰撞的盛宴。apache hbase“掌门人”michael stack也参加了此次会议,并与hbase开发者们举行了一次圆桌会议,共同探讨hbase的现状和未来。

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

这次hbasecon的火爆程度,直接展示了国内企业和开发者们对hbase热情和期望。hbasecon大会不仅给hbase的使用者们带来了最新鲜的技术进展,互通有无,吸收其他公司的先进经验;也成为hbase使用者和开发者之间沟通的桥梁,能让开发者们看到业界动态,用户的需求,共同把hbase打造成一个更加易用,更高性能,更稳定的大数据存储。这次hbasecon大会是一个很好的开端,期望hbasecon asia越办越好,给大家带来更多的干货!

阿里5位嘉宾3个分享:HBaseCon Asia 2017干货满满

最后

如果你对大数据在线存储、对hbase感兴趣,或者是想更好地使用hbase、开发更nb的产品,欢迎联系我们(正研,[email protected]),一起交流,互相学习!

本文作者:杨文龙(正研)

来源:51cto