阿里云的hbase写优化在什么地方?

  • 时间:
  • 浏览:2
  • 来源:uu快3新平台_uu快3诀窍_讨论群

前缀BloomFilter

HBase利用BloomFilter过滤并可不可不都可以 可不可不都可以 的文件来提高HBase数据读的性能,其效果只支持Get不支持Scan;在实际使用场景中,有什么都有业务Scan操作会扫描具有相同前缀的行,比如物流详情场景,其Rowkey型态是:物流单号+时间戳,另另一一两个多 物流商品会经历多个状况,每有一次状况转移还要写入一行数据,有有哪些状况正常在10个左右,通过Scan的法律土最好的办法还还要查询另另一一两个多 物流单号下的所有状况。针对你你这个 场景亲戚亲戚我们 设计了前缀BloomFilter,在业务Scan的起止范围发生公共前缀下,使得Scan操作也还还要使用BloomFilter来过滤文件,大大提升了查询下行速率 ;菜鸟物流详情开启前缀BloomFilter后,查询性能提升一倍,做到大促不扩容,轻松hold住今年大促6.57亿包裹单的物流详情查询。

异步API

老是以来,HBase可不可不都可以 可不可不都可以 使用同步API法律土最好的办法访问服务,使得吞吐型场景应用端一定量守护守护进程阻塞在HBase接口,严重影响性能,而异步的思想并非陌生。

在去年双11后,阿里HBase开发实现了一套全新的异步API,使得客户端不还要阻塞停留到服务端返回结果,通过回调函数执行请求成功或失败后的业务逻辑,大大提升请求吞吐。亲戚亲戚我们 将其应用于监控、安全、日志等场景,整体写入吞吐还还要提升1至3倍。

内置计算

数据的聚合、校正、清洗是数据库系统常见的计算场景,通过结构客户端进行数据的扫描、计算、更新是亲戚亲戚我们 常用的传统法律土最好的办法。当面对TB级以上规模的时候 ,你你这个 法律土最好的办法不仅下行速率 低下,否则对你这个 的数据服务性能影响巨大。

阿里HBase老是在探索你这个 高效、环保的能力去解决亲戚亲戚我们 对于数据基本计算的需求,几经业务理解与抽象,最终找到你这个 基于coprocessor的数据库内置计算方案。它不仅还还要提供基本的Count、Avg、Sum、PV、UV等分析聚合能力,也还还要提供常见的格式转换、内容校正、字段清洗等数据管理能力。

其基本原理是,亲戚亲戚我们 在HBase的Flush、Compaction、查询返回等路径添加coprocessor的hook,并开发什么都有通用的coprocessor插件,使得HBase服务端可不可不都可以 在Compaction、Flush期间就完成数据计算工作,这不仅有利于计算结果快速输出,也大大减少数据存储IO,大大提升整体性能。

HLog压缩

HLog从0.92版本开始英文英文英文支持字典压缩,但其与Replication好友克隆冲突,使得其老是无法真正地被使用,而一定量在线业务使用宽表型态,几八个字段的场景比比皆是,HLog的压缩将有效提升写入能力。为此,阿里HBase重构了HLog的压缩机制,与HBase Replication功能完美兼容运行,在消费记录、数据总线、库存对账等多个业务线获得良好效果,提升写入20%。

在过去的几年,阿里HBase投入了很大的精力去进行系统的性能优化,包括Region级二级索引、Bucket Cache、Small Scan、Reversed Scan等什么都有重要优化可能性反馈给社区,并在开源伙伴的同時 努力下,不断更新迭代,读者还还要从社区了解具体的原理与实现。举例有好多个优化的细节如下:

贺定圆