采用YCSB对Hbase进行性能测试

YCSB基础知识及HBase性能测试 YCSB是雅虎开源的NoSQL测试工具,本篇以对HBase的测试为例介绍其运行流程。一、准备工作下载安装: YCSB提供编译后的安装文件,只要下载安装包解压就好。 踩过的坑: (1) 目前最新的版本为0.11.0。但是我在使用的过程中使用官网推荐的两种方法均不能正常使用: 直接下载安装包,解压过程中有文件损坏,文件不完整 下载源码包用mvn clean package自编译时,进行到83%之后便 阅读详情

参考博客:http://blog.youkuaiyun.com/bryce123phy/article/details/51254235

                 https://zhuanlan.zhihu.com/p/29370650

上一篇对大数据平台基准测试结合其他博客作了一个总结,这两天需要对hbase进行性能测试,这里也对雅虎的YCSB作一下自己的总结。

1、YCSB介绍

YCSB,全称为“Yahoo!Cloud Serving Benchmark”。是雅虎开发的用来对云服务进行基础测试的工具,其内部涵盖了常见的NoSQL数据库产品,如Cassandra、MongoDB、HBase、Redis等等。在运行YCSB的时候,可以配置不同的workload和DB,也可以指定线程数&并发数等其他参数。

此外ycsb的workloads/目录下保存了6种不同的workload类型,代表了不同的压测负载类型,详细的介绍列在下面:
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、YCSB工具的下载,安装

下载链接:https://github.com/brianfrankcooper/YCSB/releases/download/0.12.0/ycsb-0.12.0.tar.gz

相关wiki文档:https://github.com/brianfrankcooper/YCSB/wiki

这个下载下来的直接解压就可以使用,应该是编译好的。

3、使用前的一些错误排查

运行ycsb命令,出现如下报错:

[ERROR] argparse not found. Try installing it via "pip".

说明:报错缺少argparse包,建议通过pip方式安装。

argparse是Python用于解析命令行参数和选型的标准模块,用于替代已过时的optparse模块。

由于这里我机器没有安装pip,所以需要先安装pip:

wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate

python get-pip.py

pip install argparse

4、执行ycsb命令测试hbase性能

①在hbase shell中创建表:


②进行YCSB安装目录的bin目录;

使用load初始化Hbase表数据(20万条)

./ycsb load hbase10 -P../workloads/workloada -p threads=10 -cp /etc/hbase/conf -p table=usertable -p columnfamily=f1 -p recordcount=200000 -s > ./load.report

解释:db 这里ycsb里支持的hbase数据库为hbase10;
-p:是传入的参数;
-cp 参数为hbase的一些配置文件路径,也可以拷贝到ycsb安装目录的对应位置;
threads:YCSB客户端的线程数。可选地,这可以在命令行指定(默认:1);
table:是hbase表的名称;
columnfamily:是hbase表的列族;
recordcount:装载进数据库的初始记录数;
fieldcount:一条记录中的字段数(默认:10);
fieldlength:每个字段的大小(默认:100);

-s  打印测试报告信息到终端或存储到某个目录;

运行过程中会有一个WARN,可以忽略,如想解决,可以看文章开头参考的博客。

18/03/09 10:46:39 INFO zookeeper.ZooKeeper: Client environment:user.name=root
18/03/09 10:46:39 INFO zookeeper.ZooKeeper: Client environment:user.home=/root
18/03/09 10:46:39 INFO zookeeper.ZooKeeper: Client environment:user.dir=/opt/software/ycsb-0.12.0/bin
18/03/09 10:46:39 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=cdh-agent2:2181,cdh-agent4:2181,cdh-agent3:2181 sessionTimeout=60000 watcher=hconnection-0x668863810x0, quorum=cdh-agent2:2181,cdh-agent4:2181,cdh-agent3:2181, baseZNode=/hbase
18/03/09 10:46:39 INFO zookeeper.ClientCnxn: Opening socket connection to server cdh-agent2/10.0.2.163:2181. Will not attempt to authenticate using SASL (unknown error)
18/03/09 10:46:39 INFO zookeeper.ClientCnxn: Socket connection established to cdh-agent2/10.0.2.163:2181, initiating session
18/03/09 10:46:39 INFO zookeeper.ClientCnxn: Session establishment complete on server cdh-agent2/10.0.2.163:2181, sessionid = 0x2620888dc5f004a, negotiated timeout = 60000
18/03/09 10:46:39 WARN util.DynamicClassLoader: Failed to identify the fs of dir hdfs://cdh-agent1:8020/hbase/lib, ignored
java.io.IOException: No FileSystem for scheme: hdfs
        at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2579)
        at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2586)
        at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:89)
        at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2625)
        at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2607)
        at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:368)
        at org.apache.hadoop.fs.Path.getFileSystem(Path.java:296)
        at org.apache.hadoop.hbase.util.DynamicClassLoader.<init>(DynamicClassLoader.java:104)
        at org.apache.hadoop.hbase.protobuf.ProtobufUtil.<clinit>(ProtobufUtil.java:232)
        at org.apache.hadoop.hbase.ClusterId.parseFrom(ClusterId.java:64)
        at org.apache.hadoop.hbase.zookeeper.ZKClusterId.readClusterIdZNode(ZKClusterId.java:75)
        at org.apache.hadoop.hbase.client.ZooKeeperRegistry.getClusterId(ZooKeeperRegistry.java:86)
        at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.retrieveClusterId(ConnectionManager.java:833)
        at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.<init>(ConnectionManager.java:623)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:238)
        at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:218)
        at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:119)
        at com.yahoo.ycsb.db.HBaseClient10.init(HBaseClient10.java:149)
        at com.yahoo.ycsb.DBWrapper.init(DBWrapper.java:99)
        at com.yahoo.ycsb.ClientThread.run(Client.java:418)
        at java.lang.Thread.run(Thread.java:745)
DBWrapper: report latency for each error is false and specific error codes to track for latency are: []
2018-03-09 10:46:49:272 10 sec: 4601 operations; 460.1 current ops/sec; est completion in 12 seconds [INSERT: Count=4602, Max=141183, Min=1240, Avg=1941.06, 90=2747, 99=4231, 99.9=7039, 99.99=141183] 
18/03/09 10:46:55 INFO client.ConnectionManager$HConnectionImplementation: Closing master protocol: MasterService
18/03/09 10:46:55 INFO client.ConnectionManager$HConnectionImplementation: Closing zookeeper sessionid=0x2620888dc5f004a
18/03/09 10:46:55 INFO zookeeper.ZooKeeper: Session: 0x2620888dc5f004a closed
18/03/09 10:46:55 INFO zookeeper.ClientCnxn: EventThread shut down
2018-03-09 10:46:55:495 16 sec: 10000 operations; 867.59 current ops/sec; [CLEANUP: Count=2, Max=113151, Min=7, Avg=56563.5, 90=113151, 99=113151, 99.9=113151, 99.99=113151] [INSERT: Count=5398, Max=11591, Min=763, Avg=1113.9, 90=1286, 99=1680, 99.9=4871, 99.99=8103] 

③运行run进行负载测试

./ycsb run hbase10 -P ../workloads/workloada-p threads=10 -cp /etc/hbase/conf -p table=usertable -p columnfamily=f1 -s >./run.report

④查看测试结果报告,验证hbase性能;



⑤报告含义

1.测试报告内容包括处理请求的总时间(Runtime),请求的吞吐量(Throughput),表示每秒钟可处理的请求个数,平均延时(AverageLatency),单位是us,95%的操作延时和99%的操作延时,单位都是us。此外还包括了GC相关的一些metrics。

2.关于前面的CLEANUP和INSERT,这里做个说明,insert代表的是用于压测的客户端发往集群的请求,所以insert标示的metrics代表了对集群性能的真实度量,而cleanup表示的是客户端的一些现场清理工作,比如每个客户端线程在读写完hbase之后,都需要断开到zk的连接等等,所以CLEANUP标示的metrics不需要过多关注。
【测试】自定义配置 RocksDB 进行 YCSB 测试 文章目录简介编译 RocksDB编译 YCSB修复报错自定义配置 RocksDB 进行 YCSB 测试参考资料 本文主要记录在利用 YCSB 使用配置文件测试 RocksDB 的过程中遇到的一些问题以及相应的解决办法 简介 YCSB 的全程是 Yahoo! Cloud Serving Benchmark,是雅虎开发的用来对云服务进行基础测试的工具,支持目前常见的 NoSQL 数据库产品,如 HBase、MongoDB、OrientDB、Redis 等等 RocksDB 是一个具有键/值接口的存储引擎,其中 阅读详情

相关推荐

YCSB--HBase性能测试工具的安装和使用

YCSB 一、背景概念 英文全称:Yahoo!CloudServing Benchmark(YCSB)。是Yahoo公司的一个用来对云服务进行基础测试的工具。目标是促进新一代云数据服务系统的性能比较。为四个广泛使用的系统:Cassandra、HBase、PNUTS和一个简单的片式MySQL执行,订了套核心基础测试和结果报告。   二、资源获取 首先在官网上下载源码编译或者直接下载软件包

zx8167107的博客 1万+

MongoDB不同压缩算法的影响

1.基本信息 版本3.4.5 测试 zlib 和snappy 4.2支持zetc没有测试 2.过程 数据大小: fieldcount=8 fieldlength=250 db.createCollection( "usertable", {storageEngine:{wiredTiger:{configString:'block_compressor=zlib'}}} ); YCSB Client 0.17.0 Loading workload... Starting tes

oTianQing1234的博客 1156

YCSB配置和测试HBase

本文主要介绍如何使用YCSB来测试HBase,以及如何解决No FileSystem for scheme: hdfs错误和Error accessing HBase table错误。 YCSB项目地址和简介:https://github.com/brianfrankcooper/YCSB/wiki YCSB的目标是开发一个框架和通用的workloads来评估不同的key-value和

hustsselbj的专栏 6353

使用ycsb对mongo单实例做性能测试

本文详细演示在16G,4核cpu配置下用ycsb(版本0.17)对mongo(版本4.0.10)单实例进行性能测试。 测试表数据量:一千万条数据 一 安装ycsb 安装包下载地址: https://github.com/brianfrankcooper/YCSB/releases/download/0.17.0/ycsb-0.17.0.tar.gz tar xfvz ycsb-0.17.0.tar.gz cd ycsb-0.17.0 二 使用ycsb对mongo做性能测试 2.1 选择合适的

雅冰石的专栏 2748

使用YCSB对HBase进行压测

(一)YCSB介绍: YCSB,全称为“Yahoo!Cloud Serving Benchmark”。是雅虎开发的用来对云服务进行基础测试的工具,其内部涵盖了常见的NoSQL数据库产品,如Cassandra、MongoDB、HBase、Redis等等。在运行YCSB的时候,可以配置不同的workload和DB,也可以指定线程数&并发数等其他参数。 (二)使用姿势: 以最常见的HBas

进一步有一步的欢喜 7542

YCSB性能测试工具使用

在网上查In-Memory NoSQL性能测试的资料时,偶然间发现了这个性能测试工具YCSB,全称为“Yahoo! Cloud Serving Benchmark”。它内置了对常见NoSQL数据库和数据网格产品的支持,如Cassandra、MongoDB、HBase、Redis、Infinispan等等很多的主流产品,而且不仅安装使用简单,还能自由扩展测试数据类型和支持的数据库产品。1 编译安装首

西代零零发 3万+

使用 YCSB 和 PE 进行 HBase 性能压力测试

HBase主要性能压力测试有两个,一个是 HBase 自带的 PE,另一个是 YCSB,先简单说一个两者的区别。PE 是 HBase 自带的工具,开箱即用,使用起来非常简单,但是 PE 只能按单个线程统计压测结果,不能汇总整体压测数据,更重要的是,PE 没有 YCSB 的 预设模板(Workload) 功能,测试场景单一,相较而言,YCSB 要强大的多,它的 Workload 功能非常实用,可以模拟更贴近实际使用场景的压力状况。

Laurence的技术博客 3204

YCSB对HBase性能测试(配置运行步骤)

一。下载测试工具 之后,我使用的版本是:ycsb-0.1.4 1 tar xfvz ycsb-0.1.4 2 cd ycsb-0.1.4       开始配置测试环境:       将hbase中的jar包拷贝到hbase-binding/lib文件夹下,将hbase中的/conf/hbase-site.xml拷贝到/hbase-binding/conf下。在hbase中创

雪夕阳 1366

使用YCSB对HBase进行性能测试

一、背景介绍 YCSB:Yahoo Cloud Serving Benchmark,雅虎云服务基准测试。工作负载有两个执行阶段:加载阶段(定义插入哪些数据),以及事务阶段(定义对数据集执行哪些操作)。如需加载数据,要运行 YCSB 客户端,让其执行加载阶段。为四个广泛使用的系统:Cassandra、HBase、PNUTS和一个简单的片式MySQL执行,订了套核心基础测试和结果报告。 二、YSCB安装及配置 1. 下载YCSB压缩包。这里使用的是测试hbase14的0.17.0版本的YCSB。 2

l2023TF的博客 2431

YCSB测试hbase-0.96.0

1.YCSB简介 YCSB的全称是Yahoo! Cloud Serving Benchmark,这是一个用于测试cloud serving/NoSQL/Key-Value Store的benchmark。论文发表在SoCC’10,代码开源。有很多出色的工作(包括SILT@SOSP’11,HyperDex@SIGCOMM’12)使用YCSB进行测试。为了了解hbase-0.96.0的性能,因此学习

iAm333的专栏 2954

ESP32锂电池电量检测实战:从引脚选择到低功耗优化(附完整电路图)

本文详细介绍了ESP32锂电池电量检测的实战方案,从ADC引脚选择到低功耗优化,提供完整的电路图和代码实现。通过MOS管智能开关和深度睡眠技术,显著降低静态功耗至0.5μA,提升设备续航能力。适合物联网开发者解决电量检测中的常见问题。

weixin_28731223的博客 462

HBase使用YCSB进行性能测试

Alpine docker中的HBase使用YCSB进行压力测试

weixin_44171618的博客 1025

星网锐捷语音网关密码重置全攻略:两种高效恢复出厂设置方法详解

本文详细解析了星网锐捷语音网关密码重置的两种高效方法,包括通过eth1通用口和eth0管理口的操作步骤。针对不同型号设备,提供硬件连接、Web控制台登录及CRT工具使用的具体指南,帮助用户快速恢复出厂设置并重建语音环境配置。

weixin_28698059的博客 528

Apache HBase终极性能测试指南:YCSB工具完整使用教程与基准分析

Apache HBase作为分布式NoSQL数据库,性能测试是确保生产环境稳定性的关键环节。**YCSB(Yahoo! Cloud Serving Benchmark)工具**是业界公认的HBase性能基准测试标准工具,能够全面评估读写吞吐量、延迟等关键指标。本教程将详细介绍如何使用YCSB工具进行HBase性能测试,并提供实用的基准分析技巧。🚀 ## 📊 YCSB工具简介与安装配置 YC

gitblog_00710的博客 910

如何创建属于自己的大语言模型:从零开始的指南

随着人工智能的快速发展,大语言模型(LLM)在各种场景中表现出了卓越的能力,例如文本生成、对话交互和内容总结等。本文将带你了解创建 LLM 的核心步骤,从理论到实践,让你拥有一个自己的智能助手。

赵大仁的博客 3281

Ai数字人直播系统源码部署

虚拟形象定制,直播内容智能生成,多语言支持,智能互动,声音克隆,24 小时不间断直播,多平台直播,智能数据分析,实时情感识别,视频合成,Ai数字人直播系统源码出售,Ai数字人直播系统源码部署实现 AI 数字人 24 小时不间断直播功能是一个较为复杂的任务,涉及到多个方面,如直播流的推送、内容的持续生成、系统的稳定性保障等。以下为你提供一个简化的实现思路和示例代码,借助 Python 结合 FFmpeg 工具来模拟 24 小时不间断直播。

weixin_ggwwsscc的博客 1257

YCSB的安装编译与运用--测试HBase

YCSB

加油!长友 4446

雷达杂波的基础知识

例如工作在海上的机载雷达,航行在海上的船用雷达,它们都不想要海杂波,会影响它们对小目标的检测,从而以为“漏掉”海面飞行的巡航导弹而被击毁。海杂波的反射系数是非常复杂的,影响的因素很多,除了和雷达参数有关,显然还和海况息息相关,经验模型经常将反射系数表示成海况的函数,在不同条件和不同模型的情况下,反射系数的值不同。说到“杂波”,你可能想到的就是如何去抑制它,去减少它在雷达回波中的分量,在很多情况是这样的。云雨的反射对飞机雷达来说是不希望的,但确是气象雷达所利用的,可以用来测量降雨率,提升天气预报的准确性。

qq_43416206的博客 2134

YCSB 对HBase 性能测试

我认真的在想,关在牢里面的人,不一定比放在外面的人坏。 -- 三毛 这篇文章放草稿箱快两个多月了,今天突然被告知,要换方向,看了近三个月的HBase就这样别了,很突然。   刚开始装上HBase系统,再还没什么应用的情况下,就不知拿着它干嘛,好吧,测试一下。 HBase的版本是:0.90.5 Hadoop的版本是:1.0.0,分布式部署,一共四个节点。  ...

dizhai7933的博客 336

Python爬虫教程:抓取电商网站评论(以淘宝和京东为例)

通过本文的介绍,我们学会了如何使用Python编写爬虫,抓取淘宝和京东等电商平台的商品评论数据。我们介绍了如何使用电商平台提供的开放API以及如何通过模拟浏览器来抓取动态加载的数据。此外,我们还讨论了如何应对反爬虫技术,如何存储抓取的数据等。爬取电商平台的数据是一个强大的工具,能够为市场分析、消费者行为研究、产品优化等领域提供有力的支持。然而,在使用爬虫技术时,我们必须遵循法律法规,尊重平台的隐私政策,避免滥用数据。

2201_76125261的博客 1738

医疗数据采集:Python爬虫爬取医学文献与药品信息(2026合规与伦理版)

医疗数据采集不同于爬取新闻或房价,它直接关系到人的生命健康和法律底线。技术层面:优先使用官方 API (PubMed E-utilities, BioThings),避免解析复杂HTML。法律层面:严守“不碰隐私、不破付费、不传谣言”三条红线。伦理层面:保持对生命的敬畏,确保数据的准确性和用途的正当性。在2026年,一个优秀的医疗数据工程师,不是那个能爬取最多数据的人,而是那个能在合规框架下,利用公开数据解决真实医疗问题的人。请务必珍视您的职业生涯和法律责任,切勿以身试法。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 286

使用YCSB对HBase进行测试

本文转载自:http://www.cnblogs.com/gpcuster/archive/2011/08/16/2141430.html 作者:gpcuster 转载请注明该声明。YCSB介绍 YCSB(Yahoo! Cloud Serving Benchmark)是雅虎开源的一款通用的性能测试工具。 通过这个工具我们可以对各类NoSQL产品进行相关的性能测试,包括: PNU...

xfxf996的博客 435

RK3588开发笔记-ISP模块参数调试

本文详细介绍了基于RK3588平台的ISP模块参数调试流程。主要内容包括:硬件准备(RK3588板卡、IMX415摄像头等)、软件环境搭建(Ubuntu系统、RKISP_Tuner工具)、IMX415摄像头基础使用验证、RKISP2.x Tuner工具的使用方法(新建/加载IQ参数文件、Sensor配置、Raw图采集)以及最终IQ文件的部署。文章重点强调了基础标定的重要性,建议开发者分场景调试并参考官方文档,通过合理配置ISP参数来优化图像质量。该调试流程适用于RK3588平台的图像采集类项目开发。

flypig has a dream! 839

YCSB基准性能测试之HBase

官方工具下载链接: https://github.com/brianfrankcooper/YCSB/releases 官方使用文档: https://github.com/brianfrankcooper/YCSB/tree/master/hbase2 YCSB workload策略 workloada read50%,update50% 重更新 workloadb read95%,update5% 读多写少 workloadc read100% 只读 workloadd re

王其的博客 2599

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

如何使用YCSB对mongodb数据库进行性能测试

最近接到一个活需要对mongodb数据库的写入进行性能测试,之前从未接触过这方面的东西,经过一番搜索后发现了YCSB(全称为Yahoo!Cloud Serving Benchmark),该性能测试工具由Java语言编写,主要用于云端或者服务器端的数据库性能测试工具,其内部涵盖了常见的NoSQL数据库产品,如Cassandra、MongoDB、HBase、Redis等等,在此记录一下过程。

梧桐的博客 1638

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

YCSB测试HBase性能

版本: Hadoop 2.7.7 HBase 1.1.2 Hadoop为伪分布式安装。 首先下载YSCB安装包,目前我下载的版本为ycsb-hbase12-binding-0.14.0,是YSCB针对HBase精简的版本。这是下载地址 一、YSCB的安装与配置 1.1 YSCB的安装 点击以上连接,选择ycsb-hbase12-binding-0.14.0.tar.gz安装包下载。默认保存到Dow...

weixin_45609796的博客 1161

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

上一篇: 采用Hibench进行大数据平台(CDH)基准性能测试
风筝中有风
博客等级 码龄11年 4粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值