当前位置: 首页 > news >正文

Hbase pe 压测 OOM问题解决

说明:本人使用CDH虚拟机搭建了Hbase集群,但是在压测的时发现线程多个的时候直接回OOM,记录一下

执行命令

hbase pe --nomapred --oneCon=true --table=rw_test_1 --rows=1000 --valueSize=100 --compress=SNAPPY --presplit=10 --autoFlush=true randomWrite 100

异常
OOM
不光爆了异常,还dump 了 heap
修改参数最后面的nclients发现客户端数量比较多的时候直接内存OOM,堆内存溢出
修改堆的大小,然后重新调整,可以逐步增加线程数量。
Java Heap Size of HBase Master in Bytes
在这里插入图片描述
执行结果

pe相关介绍

帮助命令

hbase pe
hbase pe <OPTIONS> [-D<property=value>]* <command> <nclients>

参数含义
nomapred:表示采用MapReduce多线程测试还是本地多线程测试,一般采用本地多线程的方式,在命令中加上–nomapred即可;

oneCon:是否所有线程使用一个Connection连接,默认false,表示每个线程都会创建一个HBase Connection,这样不合理,建议设置为true,命令中加–oneCon=true即可;

valueSize:写入HBase的value的size,单位Byte,默认值为1000。需要根据实际的业务字段值的大小设置valueSize,比如–valueSize=100;

table:测试表的名称,如果不设置则默认为TestTable;

rows:单个线程测试的行数,默认值为1048576,实际测试时可自行制定,比如–rows=100000。注意这是单线程的行数,实际行数要乘以线程数,比如10个线程写入时就会往HBase中写100000*10=100w条记录;

size:单个线程测试的大小,单位为GB,默认值为1,这个参数与rows是互斥的,不能同时设置;

compress:设置表的压缩算法,默认None,表示不压缩,可以根据实际情况设置比如–compress=SNAPPY。这个设置也可以用来测试不同压缩算法对读写性能的影响;

presplit:表的预分区数量即region个数,一般要参考regionserver数量,设置一个合理值以避免数据热点和影响测试结果,比如–presplit=10;

autoFlush:写入操作的autoFlush属性,默认false,这里是BufferedMutator写入方式,禁用autoFlush表示会批量写入,一般建议设置为true以获得单条写的性能测试,即–autoFlush=true;

caching:Scan读操作的caching属性,默认值为30,一般可以根据实际使用设置,比如–caching=100

command 是PE支持的读写测试类型,包括randomReadrandomWriteSequentialReadSequentialWrite等,具体如上。nclients 就是开启的线程数量。上面的问题就是nclients比较大导致OOM

http://www.lryc.cn/news/106201.html

相关文章:

  • 问题解决——datagrip远程连接虚拟机中ubuntu的mysql失败
  • 【晚风摇叶之随机密码生成器】随机生成密码
  • Spring Cache
  • em3288 linux_4.19 sd卡调试
  • 前端vue uni-app cc-countdown倒计时组件
  • fifo读写的数据个数
  • Java之Map接口
  • windows系统中的命令行可以用python,pip等命令(已在系统中添加过python环境变量),但是pycharm的terminal中无法使用。
  • 编译 OneFlow 模型
  • 【kubernetes】k8s单master集群环境搭建及kuboard部署
  • 0802|IO进程线程 day5 进程概念
  • 4 Promethues监控主机和容器
  • 亚马逊买家账号ip关联怎么处理
  • NO4 实验四:生成Web工程
  • 【linux】进程
  • 电商高并发设计之SpringBoot整合Redis实现布隆过滤器
  • SpringBoot第25讲:SpringBoot集成MySQL - MyBatis 注解方式
  • 服务器返回 413 Request Entity Too Large
  • 如何一目了然地监控远程 Linux 系统
  • 9.环境对象和回调函数
  • 51单片机(普中HC6800-EM3 V3.0)实验例程软件分析概览
  • ubuntu18.04 安装php7.4-xdebug
  • java 定时任务不按照规定时间执行
  • Android复习(Android基础-四大组件)—— Activity
  • Linux系统安装部署MongoDB完整教程(图文详解)
  • CSS图片放到<div>里面,自适应宽高全部显示,点击图片跳到新页面预览,点击旋转按钮图片可旋转
  • 二阶段web基础与http协议
  • SpringBoot+Freemark根据html模板动态导出PDF
  • XPath数据提取与贴吧爬虫应用示例
  • 字符串匹配-KMP算法