世界看点:数据库性能测试工具——BenchmarkFactory
压测三步曲:准备数据--运行压测---清除压测数据
(资料图片仅供参考)
公式理解:
SQL调优公式T=S/V
QPS(TPS)= 并发数/平均响应时间
并发数 = QPS(TPS) * 平均响应时间
注:Benchmark Factory 测试版User Load 并发最高支持100。(用来学习和理解概念还是很好的)
Benchmark Factory 使用 简介 一. Benchmark Factory 是什么 Benchmark Factory 是一款简单易用的数据库性能测试工具。它是通过模拟用户负载和事务在数所库的操作来衡量数据库的性能。它支持的数据库主要有Oracle, SQL Server, IBM DB2, SAP, MySQL,PostgreSQL, Teradata. 无论你是DBA, 开发人员还是测试人员,你都可以使用Benchmark Factory来测试你的数据库,比如你需要对数据库性能进行调优,你的硬件或者软件环境有改变,数据库迁移,对数据库进行性能监测,数据库Trace回放,或者直接录制生产数据库的操作然后在测试环境回放等等 。
二. 运行环境 Benchmark Factory 不需要特殊的运行环境,只是针对数据库,需要有相应的数据库客户端,对于SQL Server, Windows有自带客户端,Benchmark Factory 也有自带一个2012的Native Client.
三. 测试类型Benchmark Factory 提供的主要测试类型有:
基准性能测试(Industry Standard Benchmark Factory Test),混合基准性能测试(Artificial Test for Desired Effect), 数据库操作录制与回放(Capture/Replay Test),对用户自己捕获的Trace进行回放,可扩展性测试(Scalability Test), 用户自定义测试(Custom Test);创建/删除基准对象测试(Create/Delete Benchmark Objects Test)用于辅助基准性能测试。执行外部文件(Execute External File)可用于执行一些自定义的批处理文件和其它可执行文件等。所有的测试支持RESTAPI,可与CI工具集成。 四. 测试使用场景及实例 1. Industry Standard Benchmark Factory Test(TPC-C, TPC-E, TPC-H, TPC-D,AS3AP….) 这一类测试是根据国际上TPC组织(TPC-Homepage)提出的性能测试标准和规范实现的测试集合。这些测试是在数据库中创建固定的表,然后生成相应的数据(Create Objects for ###),之后跑一组固定的事务(但是事务个数,权重可修改)测试(如TPC-C的是TPC-C Transaction Mix),跑完可以运行一个删除对象的测试删除这些数据(Delete Objects for ###)。我们可以根据需要更改生成数据的大小,数据存放的表空间,执行事务时的用户数。 那哪些场景会用到这种测试呢?笔者以为有以下几种情境:当新装一个数据库需要对它进行性能调优,在事务数确定的情况下是否可达到预期的并发用户数;当需要更新数据库版本时,对新旧版本的性能进行比较;当相同的数据库要迁移到新的软硬件环境上时,对它的性能进行比较;当开发出的数据库产品对数据库的操作有改动时,测试它对数据库性能的影响;在数据库性能比较稳定之后,进行性能的监测等等。 下面我们创建 一个TPC-C Job实例: 首先创建一个connection: (注意创建任何一个Job 都需要先创建Cconnection)
当连接创建好之后,我们点击主菜单上的New按钮打开New Job Wizard向导:
点击Add Workload,选择Industry Standard Benchmark Test –> TPC-C
点击Add Test,我们的 Job就创建好了(点击Run Job就可以跑了)。此页面所有的蓝色链接都是可以点开编辑的,下面我们就再了解下这些链接的页面:
\4. 下面我们就点击Scale:1并把Scale大小改成10,Benchmark Size就发生了改变。
然后我们点击Options选上并行创建Index(Distribute index creation(one index create per virtual user)。
此页各选项说明:
1. Distribute index creation(one index create per virtual user): 并行创建index 2. Distribute load using Benchmark Factory Agents: 使用Agent加载数据,不选直接用Console 加载(远程安装Agent的将在下一个分享) 3. Object/Data Retention:(无论哪一个选项,只要数据库中没创建过都会自动创建并加载) a. Create/Load objects if objects don’t exist(no backup sets created): 当数据库中不存在这些表,对象的时候会创建,并加载数据, 但是当数据库中存在这些表和对象的时候就直接到TPC-C Transaction Mix test 这一步。 b. Delete benchmark objects after completion of job: 当测试跑完以后删除表和对象。 c. Refresh data using backup sets: 如果第一次用这个选项会在数据库创建一个表和对象的备份,之后再跑这个选项时就直接用备份数据恢复表和对象进行测试,这个选项会在数据库存2份相同的数据,需要占用更多的空间。但是这个选项只针对固定的Scale,如果第一次跑这个选项用的是scale=10,下次你还是要用相同的Scale。 d. Recreate objects and reload data every execution: 每次都把数据库中的存在的表和对象先删除,之后再创建和加载,即使数据库中并没有也先执行删除再创建。 e. Refresh data using inserts: 当跑过测试之后,数据会有所改变,应用此项刷新数据。
点击Custom Creation SQL,勾选Enable Custom Creation SQL,在这SQL语句后面可以指定partition, table space等内容。
点击TPC-C Transaction Mix -> User Load,这里用来设置虚拟用户数,默认1,4,8,10,表示4个循环,第一个是一个虚拟用户,依此类推,到第四个就是10个并发虚拟用户同时访问并操作数据库。
点击Timing修改每个循环执行的时间,默认是4分钟。
点击Job Setup 可以设置跑Job 的时间。
设置了这么多之后(不设置就用默认值),点击Run Job跑跑看(注意,Create Objects for TPC-C的运行速度也跟数据库性能有关,此外,这一步支持Load from failure, 即如果loading的时候断网了,或表空间不够了,只要让它再跑,它会从失败的地方往后加数据,而不需要重头再来!)
Benchmark Factory 允许同时跑多个Job, 也可以连多个VM(此时VM作为agent)跑同一个Job,或者不同的Job在不同的VM跑。但是同一个Benchmark,像上面的TPC-C是同一种标准,最好不要同时用同一个连接跑,因为数据是共用的,可以同时在2个不同的连接上跑,以比较这两个连接的响应时间,TPS, tpmC等,接下来看一下Benchmark Factory生成的Report。 以下是Results和User Load部分截图 TPC-C Disclosure Report:
在Compare Results页面比较结果
Run Reports 可导出,可比较,可迁移
标签:
相关推荐:
最新新闻:
- 【配置】TrinityCore魔兽世界私服11159完整配置
- VLD怎么安装使用?VLD的安装使用及其问题:环球观焦点
- 游戏环境下如何实现真正D3D的窗口?启动进程和取得进程的方法
- apk改之理简单教程 双击ApkIDE.exe启动程序详解|全球热文
- 【环球时快讯】函数的length是什么意思?javascript函数的length
- 最新:Gaia、Gecko和Gonk的区别在哪里?一文读懂网络操作系统WebOS
- google官方安装指导:installation跑数据集|天天播报
- 世界看点:数据库性能测试工具——BenchmarkFactory
- 如何开通QQ聊天工具界面?如何取消QQ验证设置?:环球观点
- 【当前热闻】Mac电脑上怎么设置手写输入?Mac自带手写输入法
- 全球热点!后视镜和倒车影像哪个更好一点?新手司机一定要知道
- qq炫舞手游进不去怎么办?详细解决方案_天天热点评
- 如何防止ARP欺骗?防止ARP欺骗的方法
- Unix系统下的伯克利socket编程 如何监视文件描述符?
- 【数据更新】iPhone11系列数据升级至4.1版
- 化身鸡哥!《消光2》外观DLC“狂鸡捆绑包”上线 全球百事通
- 特斯拉一夜暴跌6%:市值蒸发401亿美元_环球快讯
- 杜兆才落网后!孙雯正式被提拔,49岁扛起足协重任 全球独家
- 性能对标RTX 3080!RTX 4070桌面显卡OpenCL跑分曝光
- 【环球热闻】QQ如何使用声卡?QQ检测不到声音的解决方法
- 会议电话由哪些设备组成?会议电话组成设备介绍
- dota2为什么一直显示连接至游戏协调服务器中?详情介绍:当前头条
- 2016年笔记本销量排行榜 你的笔记本上榜了吗?:世界即时看
- 苹果ipad3 ios6.1怎么越狱?苹果ipad3 ios6.1越狱教程介绍
- Win10怎么关闭自动更新?Win10正式版关闭自动更新解决方法分享 世界播报
- 联想笔记本dvd驱动安装及使用说明 光驱弹不出的解决方法
- 淘宝超级店长是什么?超级店长适用于所有淘宝网店
- 80072f78无法更新怎么办?80072F78无法更新解决教程
- skype不能登录了怎么办?解决skype不能登录的方法步骤
- hhukcert02.exe是什么?hhukcert02.exe注册表文件途径在哪?
- 如何在安全模式下打开Word文档/Office?安全模式下打开Word文档操作步骤
- 电脑知识:cmd命令提示符的使用方法
- Win10如何防止U盘中毒?防止U盘中毒的解决方法
- 天天速读:如何用ghost进行一键还原?六个步骤教你正确使用
- 龙之谷加点模拟器怎么洗点?龙之谷加点模拟器安装方法
- 世界观点:手机手绘密码忘记了怎么办?京崎手机和这款手机解锁教程来了
- 三星S5830i内存不足怎么办?刷机教程来了
- dnf怎么屏蔽其他玩家?dnf光环幻化栏怎么弄?
- 如何安装HTC更新实用程序?Android手机更新实用程序
- 泓能移动电源怎么样?泓能移动电源价格介绍:每日消息
- tslog是什么文件夹?tslog文件夹彻底删除办法
- 焦点滚动:电脑假死怎么办? 三种方法解决教程
- office2007注册码破解方法 office2007注册码表及使用说明
- 电脑dns错误怎么办?dns错误怎么解决?-天天信息
- 如何解决家中的无线信号覆盖问题?wifi无线覆盖解决方案 环球最资讯
- qq飞车s车有哪些?qq飞车s车大全QQ级赛车排行榜
- 世界微速讯:一台电脑多少瓦?关于电脑功耗的解答
- umd是什么格式?umd格式怎么打开?
- 世界快看:车载gps终端怎么样?车载gps终端介绍
- 简讯:顽皮狗:《最后生还者》先优化好PC版 才能登SteamDeck
- 简讯:顽皮狗:《最后生还者》先优化好PC版 才能登SteamDeck
- 山高新能源集团(01250.HK)公告2022年度业绩,盈利喜迎向上拐点:头条焦点
- 小米米家智能晾衣机1S发布:35kg承重、一键隐形
- 世界热文:向全球精英发出邀请“奔向蓝海”,象山再次启动这场大赛
- 小米13 Ultra官方预热:雷军疯狂暗示:当前关注
- 世界实时:moto razr+ 2023曝光:新折叠屏要来了!
- 越骂越买 iPhone 13全球最畅销手机
- 重点聚焦!卡普空股价大涨创历史新高!《生化危机4:重制版》立大功
- 焦点信息:经典游戏系列《大笨猫》设计师迈克尔·博林去世 享年73岁
- 《Dark and Darker》开发者有意众筹50万美元 现已暂停:热资讯
- 《小美人鱼》真人电影新预告 美丽之鱼浮出水面-每日播报
- 宫颈癌疫苗预防疾病_宫颈癌疫苗如何使用 有效预防宫颈癌办法
- 潮流配色 简约时尚标杆之作 三星Galaxy A54 5G火热预约登记中|世界热点
- 快看点丨RTX 4060笔记本售价5899!将星游戏本性价比之王!
- 环球看热讯:Wi-Fi联盟报告:研究显示Wi-Fi有助于节能减排
- 苹果MR头显即将推出、库克称十年内用其取代iPhone
- 电脑每次开机都自检怎么解决?电脑每次开机都自检解决方法
- 诺基亚X发布时间是什么时候?诺基亚X上市价格是多少?
- 如何刻盘光盘?笔记本电脑刻录光盘教程
- 微信登录系统错误什么意思?微信登录密码忘记了怎么找回?
- 剑灵错误代码14001怎么解决?剑灵错误代码14001解决方法
- 怎么使用按键精灵制作游戏脚本?按键精灵制作游戏脚本步骤
- 雨滴桌面秀使用方法 rainmeter皮肤包怎么用?
- 什么是oa系统?一套oa系统大概需要多少钱?OA系统价格
- ipad闪退修复方法 ipad闪退app该如何解决?
- H264帧格式解析 详解H264Annexb与AVCC格式解析 天天观点
- qqpctray.exe是什么?qqpctray.exe程序占用率高怎么办?
- 如何获取xlsx的Excel文件行数?xlsx的Excel文件使用方法 即时
- 笔记本电脑当无线路由器怎么设置?设置流程|天天观热点
- 天天信息:如何使用视频剪辑软件将qsv格式视频转换为MP4格式?方法步骤
- 天天热门:中国大学MOOC网站资源点汇总(收藏)
- javascript首字母字符串开发教程 用于获取汉字的首字母拼音的开发方法|天天快资讯
- C语言基础知识入门 C语言的具体结构
- VEX为什么要用到中间表达式?为什么要用到VEX?|环球头条
- 中国“北斗”卫星导航系统——定位模块需求介绍