自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 HBase堆外内存使用解析

背景JVM需要申请一块内存用于进程的使用,类、对象、方法等数据均保存在JVM堆栈也就是申请的这块内存之中,JVM也会负责帮我们管理和回收再利用这块内存。相对的,堆外内存就是直接调用系统malloc分配的内存,这部分内存不属于JVM直接管理,也不受JVM最大内存的限制,通过引用指向这段内存。堆外内存可以带来更小的GC压力,更少的内存碎片,以及零拷贝方面的性能优化。HBase在读写路径上都进行了堆外内存的优化。目前HBase的堆外内存主要应用在4部分:MSLAB,Bucket cache,RPC,HDF

2022-02-17 15:40:28 1319

原创 HBase bulkload后scan性能问题如何优化

问题简介Bulk load主要面向需要大批量的向HBase导入数据的场景。这种方式是先生成HBase的底层存储文件 HFile,然后直接将这些 HFile 移动到HBase的存储目录下。它相比调用HBase的put API添加数据,处理效率更快并且对HBase 运行影响更小。业务使用bulkload+scan的模式非常普遍,往往是一个离线任务bulkload一批文件后,就启动另一个离线任务去读所有bulkload过的数据。普遍存在的问题是,bulk load后scan全表时请求处理慢。且这种情况同时可

2022-02-17 15:39:18 751

原创 记一次HBase bulkload后,上万小文件查询性能的优化实践

背景业务导入的小文件数量过多,降低了compaction的效率:经统计,业务有至少60%的文件是小于100B的小文件,且每天每台机器4小时内平均新增1万个文件,最高2万个。大部分compaction的文件总大小仅几十KB。优化措施根据分析的原因,进行了代码和配置的双重优化:限制stripe和L0触发compact的最小大小,提升compact的效率:避免频繁进行KB级别大小的compaction;避免过小的stripe频繁参与compaction;增加的compaction队列的管

2022-02-17 15:38:11 861

原创 HBase balancer原理解析和一些优化方案

Balancer简介Balancer是HBase非常重要的一个模块,属于Master功能的一部分,主要通过均衡RS上的region分布来规避一些热点问题。集群规模大,用户数量多,业务种类多时,balancer的重要性愈发明显。不及时的balance或未知问题的balance执行中断,都有可能使线上热点问题影响范围变大。社区在2021年,有多个开发者对balancer做了大量优化,这表明balancer的问题在各个公司中都很突出和重要。Balancer背景目前balancer主要分两种:SimpleLo

2022-02-17 15:36:45 828

原创 遇到和修复的一些HBase的coredump问题

HBase coredump问题和修复UI展示RPC call参数时,引用了被释放的内存。UI造成coredump的原因有两个:RPC monitor的生命周期没有控制在call的生命周期之内;RPC monitor返回给http call克隆对象时,状态变量的克隆与数据变量的克隆不匹配。状态变量类似常量拷贝,而数据变量是浅拷贝。提交到社区的issue:https://issues.apache.org/jira/browse/HBASE-25981https://issues.apach

2022-02-17 15:35:19 662

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除