|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
这些过程被存储和运行在数据库服务器上,以减少在客户端的处理过程,从而最大限度地提高了处理能力,因为通常情况下数据库服务器会运行地更快。存储过程并不是MySQL独有的功能,但是这个最近新增加的功能使得这个数据库比以前更具吸引力了。
原文链接:
http://www.eygle.com/special/Use.Orastress.2.Test.Oracle.db.htm
Orastress!的作者是GeoffIngram,也就是我们后面先容的orabm的作者,他已经为Oracle事情数年,是HighPerformanceOracle"(ISBN:0471224367)一书的作者.
该书如今你能够在本站下载.
关于该工具的官方网页在这里能够找到:
http://www.linxcel.co.uk/orabm/index.html
Orastress!你能够在原网站下载,或选择当地下载.
该工具不是开源的,缺省的只能利用一个session测试,你能够从作者那边请求一时Key,经由过程以下页面我们能够取得7天的无功效限定利用版:
http://www.linxcel.co.uk/7505/10218_trialkey_orastress!.html
Orastress!必要在windows上运转,你必要安装Oracle客户端.
收到Key今后,注册体例以下:
C:orabm>orastress!
Serial:D5F8-C0A0
Afterreceivingthekey,installasfollowsbyenteringtheNameandKeyintothedialogboxthatdisplayswhenyourun:
C:orabm>orastress!register
Orastress!必要的数据和orabm相似,你能够参考Orabm的安装体例.
详细安装步骤以下:
#
Operation
Command
1
createtheORABMuser(assumesTOOLStablespace,TEMPtemporarytablespace)
sqlplussystem/pwd@orabm_user
2
createthetables
sqlplussystem/pwd@orabm_tab
3
loadthedata
$orabmloadWarehousesn
4
createtheindexes
sqlplussystem/pwd@orabm_ind
5
analyzethetablesandindexes
sqlplussystem/pwd@orabm_analyze
6
EnsureORABMcanruntheDBMS_LOCKpackage
AsSYSrun:
GRANTEXECUTEONDBMS_LOCKTOORABM
注重:这里构建的假如是10个Warehouses的数据,那末约莫必要1G的空间.
这里我倡议对单节点数据库分离接纳1,2,3,5,10个Warehouses举行1,2,4,6,10个并发的50000个事件的测试.
关于多节点RAC倡议接纳1,2,3,5,10个Warehouses举行1,3,4,7,10个并发的50000个事件的测试.
这一部分安装日记能够参考:安装日记
失掉测试数据今后,还必要运转以下剧本:
sqlplusorabm/orabm@<your-TNS-alias>@orastress_tab.sql
sqlplusorabm/orabm@<your-TNS-alias>@orastress.plh
sqlplusorabm/orabm@<your-TNS-alias>@orastress.plb
日记参考:windows日记
命令行实行体例以下:
orastress!–ssess-iterations-list–ttransacts-per-sess–ctns-alias-list–mmode[-sbatchsize]
这里必要以下参数:
-s指定session数目
-t指定每一个session实行的事物数目.
-c指定联合串
-m指定运转形式.包含ReadOLTPINSDIO
-s指定关于INS或DIO形式下提交批量,缺省是10000里
Note:假如Orastress!对单个Warehouse运转在read形式,那末代码实行和orabm不异.
关于四种运转形式申明以下:
READ:Runstheidenticalread-onlyworkloadasOrabmtostressCPUandmemory.
OLTP:UsesallfiveTPC-Ctransactions:New-Order,Order-Status,Payment,Stock-LevelandDelivery,inordertogenerateamixed-transaction(SQLINSERT/UPDATE/DELETE)OLTPworkloadwhichstressesCPU,memory,andI/O.
INS:RunsanI/OintensiveSQLINSERTworkloadbycopyingrowsintotheITEM_INStablefromtheTPC-CITEMtable.
DIO:RunsanI/Ointensivedirect-pathINSERTworkloadbycopyingrowsintotheITEM_DIOtablefromtheTPC-CITEMtable.
以下是一些运转举例:
Example1:
orastress!–s1–t50000–cinst1.world–moltp
Runoneiteration-comprising50000transactionsin1session-againstinst1.world.
举行一组测试,经由过程一个session,包括50000个事件,对inst1.world数据库举行测试.
Example2:
orastress!–s2–t50000–cinst1.world,inst2.world–moltp
Runoneiterationcomprising2concurrentsessionsof50000transactionsoneachofinst1.world,inst2.worldgivingatotalof4concurrentsessions.Thelocationoftheinstancesspecifiedbyinst1.world,inst2.worldisentirelydowntotheuser.Theycouldbe:
运转一组测试,对两个数据库(inst1.world,inst2.world)各收回两个并发session,每一个session运转50000个事件,这两个数据库能够是:
·2instancesofaRACcluster
·differentnonRACinstancesonthesameserver
·differentnonRACinstancesondifferentservers(e.g.oneonLinux,oneonSolaris)
Example3:
orastress!–s1,2,4–t50000–cinst1,inst2,inst3,inst4–mread
Run3iterationseachof50000transactionsoneachoffourinstances:inst1,inst2,inst3andinst4,wherethenumberofconcurrentsessionsineachiterationis:
运转3组测试,分离以1,2,4个并发session对四个实例,各实行50000个事件:
1stiteration:1concurrentsessiononeachinstance,giving4sessionstotal
2nditeration:2concurrentsessionsoneachinstance,giving8sessionstotal
3rditeration:4concurrentsessionsoneachinstance,giving16sessions
ResultsOutput--输入了局:
OutputisverysimilartoOrabm,showingthetransactionspersecondforeachsessionineachiterationandthetransactionsplitbetweenthefiveTPC-CtransactionsforOLTPmode:
输入了局和orabm十分相似,详细参考:
http://www.eygle.com/special/Use.orabm.2.Test.System.CPU.htm
---beginmode=oltpsess=1txn=5000TNS=lFriSep1922:11:062003
LXD1.WORLD#1w=3txn(all)=5000xn(sam)=3999t(sam)=431tps=92.8end=190903-12:25:39
---end-FriSep1922:20:192003
在这里复杂申明一下:
关于Benchmark测试来讲,最主要的是尺度,假如人人有一致的模子及尺度,那末测试数据也就有了意义,不然以分歧的并发、数据举行各不不异的测试是不具有太粗心义的.
尺度、对照、参考,这关于测试来讲是最主要的.
这里有一篇文章可供参考:
功能测试目标先容
以下给出我的一些测试数据:
1.10个Warehouse的测试数据
E:OraDocORACLE~4BENCHM~1ORASTR~1>"orastress!.exe"-s1-t300-chsbill-moltp---beginmode=oltpsess=1txn=300TNS=hsbillThuSep3010:35:092004HSBILL.HURRAY.COM.CN#1w=3txn(all)=300xn(sam)=239t(sam)=120tps=2d=13(5.4%)n=102(42.7%)o=6(2.5%)p=112(46.9%)s=6(2.5%)end=300904-10:34:38---end-ThuSep3010:37:392004E:OraDocORACLE~4BENCHM~1ORASTR~1>"orastress!.exe"-s2-t300-chsbill-moltp---beginmode=oltpsess=2txn=300TNS=hsbillThuSep3010:41:402004HSBILL.HURRAY.COM.CN#1w=4txn(all)=300xn(sam)=239t(sam)=469tps=.5d=12(5%)n=103(43.1%)o=13(5.4%)p=101(42.3%)s=10(4.2%)end=300904-10:47:25HSBILL.HURRAY.COM.CN#1w=4txn(all)=300xn(sam)=239t(sam)=314tps=.8d=11(4.6%)n=92(38.5%)o=10(4.2%)p=119(49.8%)s=7(2.9%)end=300904-10:47:51---end-ThuSep3010:50:512004E:OraDocORACLE~4BENCHM~1ORASTR~1>"orastress!.exe"-s2-t3000-chsbill-moltp---beginmode=oltpsess=2txn=3000TNS=hsbillThuSep3011:26:022004HSBILL.HURRAY.COM.CN#1w=8txn(all)=3000xn(sam)=2399t(sam)=4991tps=.5d=109(4.5%)n=1016(42.4%)o=116(4.8%)p=1050(43.8%)s=108(4.5%)end=300904-13:09:23HSBILL.HURRAY.COM.CN#1w=4txn(all)=3000xn(sam)=2399t(sam)=5432tps=.4d=87(3.6%)n=997(41.6%)o=128(5.3%)p=1070(44.6%)s=117(4.9%)end=300904-13:13:50---end-ThuSep3013:16:512004
2.5个warehouse的测试数据
E:OraDocORACLE~4BENCHM~1ORASTR~1>"orastress!.exe"-s2-t300-chsbill-moltp---beginmode=oltpsess=2txn=300TNS=hsbillThuSep3015:48:202004HSBILL.HURRAY.COM.CN#1w=2txn(all)=300xn(sam)=239t(sam)=13tps=18.4d=7(2.9%)n=97(40.6%)o=9(3.8%)p=119(49.8%)s=7(2.9%)end=300904-15:45:40HSBILL.HURRAY.COM.CN#1w=5txn(all)=300xn(sam)=239t(sam)=19tps=12.6d=7(2.9%)n=97(40.6%)o=11(4.6%)p=112(46.9%)s=12(5%)end=300904-15:45:47---end-ThuSep3015:48:472004
这一切听起来不错,无疑DBaaS具有很多相对于RDBMS的优势。然而MySQL学习教程,DBaaS也有其局限性,云服务中固有的局限性就是之一。当客户开始将数据放入云端时,他们会遭遇到无法控制的网络性能问题。 |
|