Hbase压力测试
PerformanceEvaluation是HBase自带的性能测试工具,该工具提供了顺序读写、随机读写、扫描等性能测试功能。本文简要介绍HBase PerformanceEvaluation的使用方法。
准备工作
1HDFS正常启动:start-dfs.sh
2Mapreduce\\yarn正常启动: start-yarn.sh
3HBase正常启动: start-hbase.sh
运行
1、进入hbase bin目录:cd {mr}/hbase/bin;
2、输入hbase org.apache.hadoop.hbase.PerformanceEvaluation 查看PE帮助信息,如下图:
写操作
1) 顺序写:sequentialWrite
例如,预分区100 regions,100线程并发,顺序写1亿条数据:
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=1000000 --presplit=100 sequentialWrite 100
注意事项:
a. hbase PE默认使用mapreduce作业进行读写扫描数据,如果使用多线程/客户端并发来代替mapreduce作业,需要加上选项 --nomapred
b. 设置每个客户端处理多少行记录,使用参数 --rows,例如 --rows=1000000,即每个线程/客户端处理1000000行记录;
c. --presplit参数,只有在写数据时使用,读表时使用参数--presplit,会导致之前写的表数据被删除;
d. 最后一个参数100即为100个线程/客户端并发。
2) 随机写:randomWrite
例如,随机写1亿条数据:
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=1000000 --presplit=100 randomWrite 100
读操作
1) 顺序读:sequentialRead
例如,顺序读1亿条数据:
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=1000000 sequentialRead 100
2) 随机读:
例如,随机读1亿条数据:
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=100000 randomRead 100
扫描操作
扫描:scan\\ scanRange10\\ scanRange100\\ scanRange1000\\scanRange10000
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=1000000 scan 100
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=100000 scanRange10 100
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=10000 scanRange100 100
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=1000 scanRange1000 100
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=100 scanRange10000 100
注意事项:
Hbase读\\扫描表数据,会优先读取内存数据,所以在写表操作结束后,可手动对表进行一次flush操作,以此清空内存中memstore数据;并且每次读\\扫描测试前,重启hbase,把缓存清掉。
Hbase压力测试的更多相关文章
- 使用SwingBench 对Oracle RAC DB性能 压力测试
我们可以使用swingbench这个工具对数据库性能进行压力测试,得到一些性能指标作为参考. SwingBench下载: http://www.dominicgiles.com/downloads.h ...
- linux压力测试工具stress
最近给PASS平台添加autoscaling的功能,根据服务器的负载情况autoscaling,为了测试这项功能用到了stress这个压力测试工具,这个工具相当好用了.具体安装方式就不说了.记录下这个 ...
- JMeter压力测试
Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域. 它可以用于测试静态和动态资源例如静态文件. ...
- kafka性能参数和压力测试揭秘
转自:http://blog.csdn.net/stark_summer/article/details/50203133 上一篇文章介绍了Kafka在设计上是如何来保证高时效.大吞吐量的,主要的内容 ...
- 开发 ASP.NET vNext 续篇:云优化的概念、Entity Framework 7.0、简单吞吐量压力测试
继续上一篇<开发 ASP.NET vNext 初步总结(使用Visual Studio 2014 CTP1)>之后, 关于云优化和版本控制: 我本想做一下MAC和LINUX的self-ho ...
- Jmeter教程 简单的压力测试
Jmeter教程 简单的压力测试:http://www.cnblogs.com/TankXiao/p/4059378.html
- HTTP压力测试工具
HttpTest4Net是一款基于C#实现的和HTTP压力测试工具,通过工具可以简单地对HTTP服务进行一个压力测试.虽然VS.NET也集成了压力测试项目,但由于VS自身占用的资源导致了在配置不高的P ...
- 微软压力测试工具 web application stress
转自 http://www.cnblogs.com/tonykan/p/3514749.html lbimba 铜牌会员 这里给广大的煤油推荐一个web网站压力测试工具.它可以用来模拟多个用户操作网 ...
- 使用Microsoft Web Application Stress Tool对web进行压力测试
Web压力测试是目前比较流行的话题,利用Web压力测试可以有效地测试一些Web服务器的运行状态和响应时间等等,对于Web服务器的承受力测试是个非常好的手法.Web 压力测试通常是利用一些工具,例如微软 ...
随机推荐
- 【javascript】判断浏览设备是手机还是电脑
判断页面浏览设备是手机还是电脑,代码如下: function browserRedirect() { var sUserAgent = navigator.userAgent.toLowerCase( ...
- 苹果icloud邮箱抓取
1 icloud登录,与其他网站登录区别 1.1 支持pop抓取的邮箱:pop提供统一接口,抓取简单: 1.2 没有前端js加密的邮箱(139,126,163):只要代码正确模拟登录流程,参数正确 ...
- 搜索广告与广告网络Demand技术-探索与利用
探索与利用(Explore and exploit) 点击率预测中还有一个重要的问题,就是探索与利用,它在工程中解决的并不好,我这章把现在论文中的常见的几种方法介绍一下.探索与利用它是所有互联网应用都 ...
- MyEclipse从数据库表反向生成实体类之Hibernate方式(反向工程)
一.打开Myeclipse Database Explorer 二.新建[New..] 三.选择数据库,添加驱动 四.测试连接 五.选中数据库中的表单击右键选择[Hibernate Rever..] ...
- JS关闭当前页面的方法
JS关闭当前页面的方法 一.不带任何提示关闭窗口的js代码 1 <a href="javascript:window.opener=null;window.open('','_self ...
- 史上最全条件编译解析 #ifdef #ifndef #undef #else #endif
C语言和C++语言程序中广泛存在着#ifdef或#ifndef等条件编译语句,本篇就系统介绍下他们的用法. 这几个宏是为了进行条件编译.一般情况下,源程序中所有的行都参加编译.但是有时希望对其中一部分 ...
- 从零开始学C++之构造函数与析构函数(二):初始化列表(const和引用成员)、拷贝构造函数
一.构造函数初始化列表 推荐在构造函数初始化列表中进行初始化 构造函数的执行分为两个阶段 初始化段 普通计算段 (一).对象成员及其初始化 C++ Code 1 2 3 4 5 6 7 8 9 1 ...
- InvocationHandler中invoke()方法的调用问题
转InvocationHandler中invoke()方法的调用问题 Java中动态代理的实现,关键就是这两个东西:Proxy.InvocationHandler,下面从InvocationHandl ...
- 通过Shell脚本读取properties文件中的参数时遇到\r换行符的问题
今天在编写微服务程序启动脚本的时候,遇到一个比较奇葩的问题,下面给出具体描述: 目标:通过读取maven插件打包时生成的pom.properties文件,获取里面的应用名称和应用版本号,然后拼接得到s ...
- MVC源码分析 - Controller创建和创建扩展
上一篇, 出现了一个至关重要的类:MvcHandler, 接下来就来看一下MvcHandler吧. 先不看具体方法, 先看一下类里面的情况. //这里实现了两个重要的接口, 异步处理和同步处理的接口p ...