一、下载ycsb 0.10包

https://github.com/brianfrankcooper/YCSB/releases/download/0.10.0/ycsb-0.10.0.tar.gz

二、上传到linux,解压

三、YSCB压力测试hbase流程
1、进入workloads目录下进行文件配置:比如: workload_test,我们也可以根据下面进行自定义配置:

参数说明:

这里我根据workloads下的文件进行的配置:

#load阶段插入的数据条数,可以在命令行设置,但是在命令行设置可以覆盖这里的作用
recordcount=1000
#run阶段(比如insert,update等操作)共计的操作次数
operationcount=1000
#核心框架配置
workload=com.yahoo.ycsb.workloads.CoreWorkload  
# true/false. 配置在读取一行数据信息时,是否同时读取所有列
readallfields=true
# 在整个run阶段中,read操作应该占的比例(默认0.95).
readproportion=0.5
# 在整个run阶段中,update操作应该占的比例(默认0.05).
updateproportion=0.5
# 在整个run阶段中,scan操作应该占的比例(默认为0).
scanproportion=0
# 在整个run阶段中,insert操作应该占的比例(默认0).
insertproportion=0
# 请求在keyspace中的分布情况,例如是否关注热点还是平均取数据等场景。可以设置 zipfian,uniform,latest
requestdistribution=zipfian
还可以进行其他参数配置,我这里默认的是以workloads下解压时就有的文件内容为准
 
workloads目录下 :里面包含一些压力测试的场景文件。YCSB自带了6中压力测试场景,文件和相应场景的对应关系如下:

workloada:混合了50%的读和50%的写;
workloadb:Read mostly workload,混合了95%的读和5%的写,该workload侧重于测试集群的读能力;
workloadc:Read only,100%只读;
workloadd:Read latest workload,插入数据,接着就读取这些新插入的数据;
workloade:Short ranges,短范围scan,不同于随机读,每个测试线程都会去scan一段数据;
workloadf:Read-modiy-wirte,读改写,客户端读出一个记录,修改它并将被修改的记录返回;
 
2、在hbase创建表:
hbase(main):005:0> create 'usertable',{NAME => 'f1'}
0 row(s) in 0.7650 seconds
 
3、加载数据:加载10W条数据记录:
bin/ycsb load hbase098 -P workloads/workloadb -cp /etc/hyperbase1/conf  -p threads=10 -p table=usertable -p columnfamily=f1 -p recordcount=100000  -s > /yang/load.log
 
参数说明:
hbase098:加载数据时指明所用的数据库类型
-P指明了所用的配置文件的路径;
其中 -P 指定workload_test核心配置,-cp 指定的是 /etc/hyperbase1/conf 下的hbase-site.xml文件 -p 指定的参数覆盖workloadb中的配置。threads指定client启用多少个线程运行HBase client, 即对应HTable实例。
threads=10 配置了并发线程个数
table=usertable -p columnfamily=f1  Hbase中的表和列族
recordcount=100000  Load阶段插入数据的条数
-s > /yang/load.log 将结果输出到指定文件
 

加载数据时发生的错误:

经过百度查询说:这个错误可以忽略不管:

因为出现错误的原因:

load加载数据的结果:

经过百度查询结果的参数说明:

到hbase shell下查看:load数据结果:这里我仅仅取了前5条记录

4、运行run测试阶段

bin/ycsb run hbase098 -P workloads/workloadb -cp /etc/hyperbase1/conf:/etc/hdfs1/conf -threads 10 -p table=usertable -p columnfamily=f1 -s > /yang/run1.log
 
这后面加了-s > /yang/run1.log将结果输出到指定位置
参数说明:
-threads 10配置了并发线程个数
-p operationcount=1000000 覆盖了workloada中operationcount=1000表示本次测试操作记录数为1000000(可配,不配就以workloadb下的为准)
选择配置:
-p measurementtype=timeseries -p timeseries.granularity=2000指明了YCSB客户端多长时间汇总一次延时,timeseries.granularity属性值的单位为1000milliseconds。所以这里的配置就表示2000s记录一次本2000s的平均延时。
在run测试阶段也会报和load数据阶段一样的错误,可以忽略不管:
run阶段测试结果:

雅虎(ycsb)测试hbase(压测)的更多相关文章

  1. YCSB测试HBase远程完全分布式集群

    写在前面 本文只讲一个很简单的问题,YCSB对HBase集群的测试.虽然网上有很多介绍YCSB测试HBase的文章,但都是针对本地HBase伪分布式集群的.大家都知道,稍微正式一些的压测都会要求测试客 ...

  2. .net HttpClient类(System.Net.Http) c#并发使用测试、压测

    .net HttpClient类(System.Net.Http) c#并发使用测试.压测

  3. ycsb 测试Hbase性能

    下载 github:https://github.com/brianfrankcooper/YCSB/releases/tag/0.10.0 wget https://github.com/brian ...

  4. mysql每秒最多能插入多少条数据 ? 死磕性能压测

    前段时间搞优化,最后瓶颈发现都在数据库单点上. 问DBA,给我的写入答案是在1W(机械硬盘)左右. 联想起前几天infoQ上一篇文章说他们最好的硬件写入速度在2W后也无法提高(SSD硬盘) 但这东西感 ...

  5. 双十一临近,怎样让买家流畅地秒杀? ——腾讯WeTest独家开放电商产品压测服务

    WeTest 导读 十一月临近,一年一度的电商大戏"双十一"又将隆重出场,目前各大商家已经开始各类优惠券的发放,各类大促的商品表单也已经提前流出,即将流入各个用户的购物车中. 作为 ...

  6. 开发人员必备工具 —— JMeter 压测

    在接口开发完以后,开发人员应该学会对自己的接口先进行压测一下,虽然压测的结果并不一定准确,也不能完全反映真实情况,但是如果有问题的话多少是可以看出的,而且也可以及早做优化,做到心里有底.否则,等测试进 ...

  7. 京东全链路压测军演系统(ForceBot)架构解密

    摘要:全链路压测是应对电商大促容量规划最有效的手段,如何有效进行容量规划是其中的架构关键问题.京东在全链路压测方面做过多年尝试,本文转载京东商城基础平台技术专家文章,介绍其最新的自动化压测 Force ...

  8. Haproxy压测

    目的:测试Haproxy压测情况 环境: Ha服务器:8核16G虚机,后端6个2核4G,压测客户端3个2核4G 安装和优化: 一.Haproxy #cd /opt/soft #wget http:// ...

  9. 性能压测中的SLA,你知道吗?

    本文是<Performance Test Together>(简称PTT)系列专题分享的第6期,该专题将从性能压测的设计.实现.执行.监控.问题定位和分析.应用场景等多个纬度对性能压测的全 ...

随机推荐

  1. AutumnWater 秋水SRC平台

    持续给自己挖坑,简单介绍一下AutumnWater 秋水SRC平台趴: SRC开源漏洞响应平台 AutumnWater 秋水SRC平台 后端使用Python-Flask(蓝图)编写 前端使用少量VUE ...

  2. XSS挑战赛(3)

    查看关键代码: <?php ini_set("display_errors", 0); $str = $_GET["keyword"]; $str00 = ...

  3. web安全漏洞

    1.什么是Web漏洞 WEB漏洞通常是指网站程序上的漏洞,可能是由于代码编写者在编写代码时考虑不周全等原因而造成的漏洞.如果网站存在WEB漏洞并被黑客攻击者利用,攻击者可以轻易控制整个网站,并可进一步 ...

  4. 对巡风vulscan的理解

    # coding:utf-8 # 漏洞检测引擎 import urllib2 import thread import time import pymongo import sys import da ...

  5. Scrum 冲刺第一天

    一.团队信息 1.团队名称 挑战极限队 2.团队成员 张博愉(3118005074) 张润柏(3118005075) 郑堉涵(3118005077) 周伟建(3118005079) 林梓琦(31180 ...

  6. AtCoder Regular Contest 109

    Contest Link 为什么还没有 Official Editorial 啊--哦,原来是日文题解,那没事了. A - Hands 有两幢 100 层的楼房 \(A,B\) ,将地面所在的楼层称为 ...

  7. 【Home Page】本博客使用指南

    [关于] 坐标:ZJ.HZ.XJ. 高一现役 OIer,经常被吊打. Luogu:_Wallace_ [近期] 浙大 ICPC-ACM 2020 部分题解: 关键字「ZJU-ICPC Summer T ...

  8. 题解-CF802C Heidi and Library (hard)

    题面 CF802C Heidi and Library (hard) 有一个大小为 \(k\) 的空书架.有 \(n\) 天和 \(n\) 种书,每天要求书架中有书 \(a_i\).每天可以多次买书, ...

  9. 定制iview选择器——全选按钮

    源码下载:https://github.com/littleOneYuan/c_select 本文索引 效果 template data prop methods watch created 效果 下 ...

  10. 【Cesium 颜狗初步】fabric 材质定义与自定义着色器实践

    fabric 材质定义:着色器实践 1. 示例代码 贴到沙盒里就可以运行: var viewer = new Cesium.Viewer("cesiumContainer"); v ...