Swingbench for oracleRAC使用方法图解

1 Swingbench 简述

1.1 概述

这是Oracle UK的一个员工在一个被抛弃的项目的基础上开发的。目前稳定版本2.2,最新版本2.3,基于JDK1.5。该工具是免费的,可以在作者的网站上自由,并且拥有详细的使用文档。除了Swingbench,作者还开发了两个相关工具:测试数据生成工具DataGenerator和跟踪文件分析工具Trace Analyzer。

Swingbench可 以执行4种不同的标准测试(benchmark),拥有三种前端展示方式Swingbench/Charbench/Minibench,其中 Charbench是字符模式的,另外两种是GUI模式的。另外还可以通过ClusterOverview可以聚合显示所有的结果。Swingbench的开发目的主要是用来展示RAC的负载和测试,但也可用于单实例环境。最新的2.3版本开始支持TimesTen内存。

下载地址:

作者博客:http://www.dominicgiles.com/blog/blog.html

目前网络上开源的oracle压力测试工具主要是orabm和swingbench,由于orabm不支持oracle 11g版本,因此本次测试使用了swingben进行了压力测试。另外,swingbench还能对rac进行测试。swingbench是UK based oracle Database Solutions group开发的一个oracle压力测试工具,好像是官方废弃的一个项目,官方页面上可以下载最新的软件版本。swingbench可以运行在windows和linux平台,本次以windows为例。

2. 环境配置

测试客户端需要安装JDK,无需安装oracle client端

swingbench的版本为2.4 ,直接解压软件压缩包,解压后路劲如下,因是windows下做测试 所以使用 winbin目录下的批处理文件

主要使用到的是如下四个bat文件

主要的bat文件作用如下:

1、 bmcompare 用来对比测试结果

2、 ccwizard 是以CC种子为模板创建的运行测试数据

3、 clusteroverview 用来启动集群的压力测试,并查看测试结果

4、 coordinator 用来启动协调服务器

5、 minibench 用来注册节点到协调服务器

6、 oewizard 是以OE种子为模板创建运行测试数据

7、 shwizard 是以SH种子为模板创建运行测试数据

8、 swingbench 执行基准测试

3.测试

3.1 创建测试数据

swingbench不使用客户数据,而是按自己的规则创建测试数据,(生成的测试数据只能使用一次,测试过后 需要再次测试的话,需要重新创建测试数据,这点做的不好)

到目标目录下 运行oewizard.bat批处理文件,也可以在目录下双机oewizard.bat批处理文件运行

会看到如下界面

下一步

下一步,输入你需要测试的数据库的 //ip/sid 以及sys用户的密码

下一步,前三项不需要修改,为swingbench自动创建的schema,只需要修改datafile的存放路径即可。

下一步,选择创建数据的数据量 最小100M 最大1TB, 我选择为100GB 一般需要4-7小时,(和你硬件io性能有关)

PS:做测试时要确定对生产库没有影响,用swingbench测试,会占用大量的IO,我使用的是新核心的新存储,和旧的环境完全独立,所以swingbench测试对旧生产环境没有任何影响。

下一步,

下一步,数据开始插入,100G的数据大概要7个小时左右完成。

4、启动swingbench配置

4.1、Winbin目录下运行coordinator–g 启动协调服务器,如下

4.2、启动swingbench配置相关压力测试参数

出现如此主界面 主要参数设置 好对应的connect string,其他的参数建附录A

设置图上vhfs1节点圈圈内的参数,节点2同样操作。

将数据库OS 的ssh打开 则可以统计主机的cpu disk IO 信息

也可以拉出AWR报表

设置 insert,update ,select的比例

完成后点击保存,退出。

4.3 注册节点到注册服务器

执行如下命令:

c:\swingbench\winbin>minibench -g vhfs1-cs 192.192.5.107:1521:vhfs1 -co test &

c:\swingbench\winbin>minibench -g vhfs2-cs 192.192.5.107:1521:vhfs2 -co test &

命令参数详解

-g 参数是指group组,

-cs 参数是指定测试源,

-co 参数是指定coordinatorServer,本机主机名是test,默认是localhost。

5、测试

运行./clusteroverview进行测试,依次启动oracleRAC的两个节点数据库连接,如下

压力测试结果如下,

6、测试结果统计对比

结果为XML文档

可以利用bmcompare.bat 对比两个测试结果,语法如图,结果会生产在本地。

c:\swingbench\winbin>bmcompare.bat -r results00003 results00013

附录:

A,swingbench的相关测试参数

1. swingbench GUI上的users:thenumber of users(threads) that attach to a database and the amount and tye ofwork they perform. users can dynamically monitor the responsetimes and loadwhich is displayed in a series of graphs.

这里的users是控制同时连接到oracle的用户数量。我们知道每个连接到oracle的用户都将分配PGA,所以这里应该是理解为并行度。

2. min/max think time: 每个交易之间最小/大的思考时间。如果设置min think time,每个交易之间将间隔规定时间。

3. max trans:如果设置将限制最大的交易数量。

4. 最顶端的transaction面板:load: Indicates the "weight" of the transaction incomparison to othe transactions. A higher weight indicates that itmore likely to be run.

这个面板主要是可以取消一些固定的交易类型。load这个栏主要是用于调整整个测试中某些交易的权重。例如:browse product主要是select 语句,可以增加他的权重,表示更多的人查询。

关于oewizard中的几个参数:

Number of Customers: 预加载到数据库表中的用户数量。

Number of Orders:预加载到数据库表中的Orders数量。

整个OE的测试是基于9张表的,那么用oewizard预加载数据量不同,测试结果是不是不同呢?

对oracle自己来说,有索引的表性能在大小一定的时候是不会有什么区别的,但是当表的行数达到一定的程度,例如几个亿行,索引性能还不如全表扫描的性能。因此对于OE所允许的范围,我认为表数据大小对性能影响不会很大。

Swingbench是一个压力测试工具,其结果tpmc也是表示每分钟所能做的交易数量。如果预加载的数据越多,而TX中所有类型的权重固定的 话,需要调整并行users的数量,以取得一个最佳的tpms值。我之前测试的结果来看,并行user固定,预加载的数据越多,得到的tpmc结果越小, 我也有点迷糊了,后来仔细分析了之后才发觉,应该相应修改并行users的数量。

通过修改TX panel里的各个交易类型的权重,也可以得出oracle的一些性能参数,例如查询加重,如果tpmc的值还差不多,说明这个数据库的查询能力还是不错的。

B,TPMC介绍

按照TPC的定义,流量指标描述了系统在执行Payment、Order-status、Delivery、Stock-Level这四种交易的同时,每分钟可以处理多少个New-Order交易。所有交易的响应时间必须满足TPC-C测试规范的要求。

流量指标值越大越好!

TPMC计算依据

为了方便计算数据库服务器的造型,我们约定:

" 系统同时在线用户数为1500人(U1);

" 平均每个用户每分钟发出2次业务请求(N1);

" 系统发出的业务请求中,更新、查询、统计各占1/3;

" 平均每次更新业务产生3个事务(T1);

" 平均每次查询业务产生8个事务(T2);

" 平均每次统计业务产生13个事务(T3);

" 一天内忙时的处理量为平均值的5倍;

" 经验系数为1.6;(实际工程经验)

" 考虑服务器保留30%的冗余;

服务器需要的处理能力为:

TPC-C=U1*N1*(T1+T2+T3)/3*3*经验系数/冗余系数

则应用服务器的处理性能估算为:

TPC-C= 1500*2*(3+8+13)/3*5*1.6/0.7=274,285 tpmC

数据库服务器关系到整个系统的稳定运行,考虑到高可靠性和高可用性,并注重设备的可扩展性和性价比,系统将配置两台TPC-C值不小于28万的高性能数据库服务器

oracle 压测工具 ld,ORACLE压力测试工具相关推荐

  1. 网页游戏 服务器 性能测试工具,简单的压力测试工具

    都说电子产品有着"高消耗"."贬值快"的特点,笔记本可算是PC产品中二手"最不值钱"的代表.不过呢,并不是所有的笔记本二手都不值钱--游戏本 ...

  2. php mysql 性能测试工具下载_MySQL压力测试工具_MySQL

    bitsCN.com MySQL压力测试工具 mysqlslap --create-schema=example --query="SELECT * FROM group_message f ...

  3. ab测试工具 linux,超实用压力测试工具-ab工具

    写在前面 在学习ab工具之前,我们需了解几个关于压力测试的概念吞吐率(Requests per second) 概念:服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内 ...

  4. jmeter生成优美的压力测试报告,jmeter生成html压测报告,jmeter压力测试

    文章主要介绍以下三点: 1:使用jmeter进行压力测试步骤 2:使用jmeter函数设置请求参数值 3:导出并生成一份html格式的测试报告 最终生成的测试报告如下: jmeter下载地址:http ...

  5. php 压测流量回放,终极 Web 应用性能和压力测试工具 Gor

    常见的 Web 应用的压力测试工具 Web 应用压力测试工具有很多,比如 Apache ab,node-ab,Apache JMeter, LoadRunner, httperf.但是这些工具都没能解 ...

  6. http压力测试工具及使用说明

    说明:介绍几款简单.易使用http压测工具,便于研发同学,压测服务,明确服务临界值,寻找服务瓶颈点. 压测时候可重点以下指标,关注并发用户数.TPS(每秒事务数量).RT(事务响应时间).事物失败率. ...

  7. Web 应用性能和压力测试工具 Gor

    Web 应用性能和压力测试工具 Gor 常见的 Web 应用的压力测试工具 Web 应用压力测试工具有很多,比如 Apache ab,node-ab,Apache JMeter, LoadRunner ...

  8. mysql压力测试工具Mysqlslap

    mysql 性能测试工具:The MySQL Benchmark Suite(不支持多CPU而且不是压力工具) 压力测试工具: MySQL super-smack:需要找能连接外网的机器,能连接外网的 ...

  9. apache ab压力测试工具-批量压测脚本

    概述 ab(Apache benchmark)是一款常用的压力测试工具.简单易用,ab的命令行一次只能支持一次测试.如果想要批量执行不同的测试方式,并自动对指标进行分析,那么单靠手工一条一条命令运行a ...

最新文章

  1. add函数 pytorch_Pytorch学习记录-Pytorch可视化使用tensorboardX
  2. ubuntu12.04 mysql 安装_Ubuntu 12.04 安装 配置 访问MySQL
  3. 关于共享单车,说点什么
  4. 七层神经网络 PK logstic 回归
  5. Python之日志处理(logging模块)
  6. 伺服电机要计算机控制,计控 - it610.com
  7. opengl绘制长方体线框_OpenGL绘图实例十之绘制3D机器人
  8. redis linux工具安装,redis Linux版本的安装,以及一些基本的认识
  9. sql while循环_SQL WHILE循环的简单示例
  10. libgc 加 .mak 在 vc6 vs2008 中的编译方法
  11. ZZULIOJ:1047: 对数表
  12. 魔兽世界燃烧的远征服务器状态,暴雪战网读入经典TBC服务器,魔兽世界燃烧的远征即将起航...
  13. Linux ALSA声卡驱动之五:移动设备中的ALSA(ASoC)
  14. 鲸会务会议管理系统线上会议邀约、推广、获客、互动一站式解决方案
  15. UltraEdit编辑器中关键字自动补齐功能设置
  16. 3D渲染技术分享:用实时反射Shader增强画面颜值
  17. 利用付费QQ群轻松躺着赚钱我是如何做到的
  18. 微软的软件工程现代化转型
  19. 小程序在同一个页面中,当改选radio选项的时候,显示出不同的内容,不触碰事件时都隐藏?
  20. FPGA入门(1):软件安装

热门文章

  1. Azkaban搭建3.32.0
  2. OpenCV4二维码识别测试
  3. “敲门砖”简历 巧用思维导图
  4. 数据复盘 Phanta Bear和TheHeart Project:亚洲名人项目正席卷 NFT 市场
  5. 计算机网络之网络安全基础-身份认证
  6. 2022年最新浙江机动车签字授权人考试模拟题库及答案
  7. RN measure获取元素坐标失效问题 (仅安卓端)
  8. 倒计时时间可以任意设置的秒表
  9. 神经网络模型不收敛原因、解决办法
  10. 模拟实现strstr函数,通俗易懂!!!