MSSQL编程:怎样实行Benchmark尺度测试(之一)---问...
在需要把许多新记录插入某个数据表的场合,DELAY_KEY_WRITE选项的作用将非常明显。另外,索引还会在硬盘上占用相当大的空间。因此应该只为最经常查询和最经常排序的数据列建立索引。注意,如果某个数据列包含许多重复的内容,为它建立索引就没有太大的实际效果。尺度|成绩怎样实行Benchmark尺度测试
---成绩的提出及Tpc-C尺度
LastUpdated:Monday,2004-10-1816:36Eygle
1.成绩的提出
不论你实行如何的一个体系,你大概都思索过如许的一系列成绩:
我应当推销如何的设备?
我的体系功能怎样?
我的体系可以接受几用户?
我的体系可以接受几并发?
功能成绩会在什么时候呈现?
我将在什么时候晋级?
明显,回覆这些成绩并不是那末复杂,更多的人是依据履历给出一个履历值,用来评价体系.
可是在年夜体系计划过程当中,履历显现是不敷够的,你必需拿出充足的证据来讲明你的架构,你的体系必需在实际上可以满意用户的需求.
到这里我们已看到,一个最主要的内容被引进了,那就是:用户需求.
这切合经济纪律,有需求才有开展,需求推进统统.因而也就有了明天我们要会商的尺度测试(benchmark).
比来一段工夫,一向介入一个年夜体系的计划计划、计划与测试,如今把一些心得写出来,供人人参考.
2.TPC构造
关于Benchmark测试,最着名的就是TPC(TransactionProcessingPerformanceCouncil,事件处置功能委员会)构造了.你能够在其
官方站点www.tpc.org取得更加具体的信息.TPC构造建立于1988年,由一些在盘算机范畴供应软硬件体系大概相干办理计划的原厂商组
成,会员从建立之初的8家公司开展到今朝的50余家,IBM、NCR、HP、Oracle、Microsoft等国际出名公司均是其会员。总部设在美国,
并对全球开放,但迄今为止,TPC构造尽年夜多半会员都是美、日、西欧的盘算机软硬件至公司.
作为一家非红利性机构,事件处置功能委员会(TPC)卖力界说诸如TPC-C、TPC-H和TPC-W基准测试之类的事件处置与数据库功能基准
测试,并根据这些基准测试项目公布客不雅功能数据。TPC基准测试接纳极其严厉的运转情况,而且必需在自力审计机构监视下举行。委员会
成员包含年夜多半次要数据库产物厂商和服务器硬件体系供给商。
TPC不给出基准程序的代码,而只给出基准程序的尺度标准(StandardSpecification)。
注重,这里我们提出在Benchmark测试中最主要的一个内容:尺度标准.
你大概听到良多人如许对你说,TPC-C值不具有任何实践意义,任何测试都没法摹拟实在临盆情况中的负荷情形。
这总说法天然有其事理,可是不免全面了,大概说这类说法实践上歪曲了TPC-C等尺度测试的本意.
我们说Benchmark测试中最主要的是尺度标准,也就是说,实在工具等要素是不主要的,只需人人都是用统一尺度标准、统一工具举行体系
测试,那末测试了局也就具有了对照意义.
从这个意义动身,benchmark测试实践上就成了各个厂商展现其手艺气力的舞台.任何厂家或别的测试者都能够依据TPC构造发布的标准尺度,
最优地机关出本人的体系,利用最优的平台和最高效的使用程序.以是你大概听Oracle如许打击过DB2,Oracle说:IBM举行的TPC测试利用的
都是Oracle数据库,而不是他们本人的DB2.实在这个说法也是全面的,TPC-C测试的是OLTP的功能,而我们晓得DB2在数据堆栈方面才是真正
壮大的.
为了包管测试了局的客不雅性,被测试者(一般是厂家)必需提交给TPC一套完全的呈报(FullDisclosureReport),包含被测体系的具体设置、分
类代价和包括五年保护用度在内的总代价.该呈报必需由TPC受权的考核员核实(TPC自己其实不做审计).如今环球只要几个考核员,全体在美国.
TPC已推出了四套基准程序,被称为TPC-A、TPC-B、TPC-C和TPC-D。个中A和B已过期,不再使用了.TPC-C是在线事件处置(OLTP)的
基准程序,TPC-D是决议撑持(DecisionSupport)的基准程序。TPC厥后实验推出的TPC-E,TPC-S,终极被保持。
3.TPC-C
我们重点存眷的是TPC-C测试.
TPC-C是一种旨在权衡联机事件处置(OLTP)体系功能与可伸缩性的行业尺度基准测试项目。这类基准测试项目将对包含查询、更新及行列式
小批量事件在内的普遍数据库功效举行测试。很多IT专业职员将TPC-C视为权衡“实在”OLTP体系功能的无效唆使器。
TPC-C基准测试针对一种摹拟定单录进与发卖情况丈量每分钟贸易事件(tpmC)吞吐量。出格值得一提的是,它将专门丈量体系在同时实行其
它四种事件范例(如付出、定单形态更新、托付及证券级变动)时每分钟所天生的新增定单事件数目。自力审计机构将卖力对基准测试了局举行
公证,同时,TPC将出据一份周全完全的测试呈报。这份测试呈报能够从TPCWeb站点(http://www.tpc.org)上取得。
tpmC界说:TPC-C的吞吐量,按无效TPC-C设置时代每分钟处置的均匀买卖次数丈量,最少要运转12分钟
3.1TPC-C标准提要
TPC-C是专门针春联机买卖处置体系(OLTP体系)的,一样平常情形下我们也把这类体系称为营业处置体系。
TPC-C测试标准中摹拟了一个对照庞大并具有代表意义的OLTP使用情况:
假定有一个年夜型商品零售商,它具有多少个散布在分歧地区的商品库;每一个堆栈卖力为10个发卖点供货;每一个发卖点为3000个客户供应服务;
每一个客户均匀一个定单有10项产物;一切定单中约1%的产物在其间接所属的堆栈中没有存货,必要由其他地区的堆栈来供货。
该体系必要处置的买卖为以下几种:
New-Order:客户输出一笔新的定货买卖;
Payment:更新客户账户余额以反应其付出情况;
Delivery:发货(摹拟批处置买卖);
Order-Status:查询客户比来买卖的形态;
Stock-Level:查询堆栈库存情况,以便可以实时补货。
关于前四品种型的买卖,请求呼应工夫在5秒之内;关于库存情况查询买卖,请求呼应工夫在20秒之内。
逻辑布局图:
流程图:
3.2.评测目标
TPC-C测试标准经由两年的研制,于1992年7月公布。几近一切在OLTP市场供应软硬件平台的厂商都公布了响应的TPC-C测试了局,跟着盘算
机手艺的不休开展,这些测试了局也在不休革新。
TPC-C的测试了局次要有两个目标:
●流量目标(Throughput,简称tpmC)
依照TPC的界说,流量目标形貌了体系在实行Payment、Order-status、Delivery、Stock-Level这四种买卖的同时,每分钟能够处置几个
New-Order买卖。一切买卖的呼应工夫必需满意TPC-C测试标准的请求。
流量目标值越年夜越好!
●性价比(Price/Performance,简称Price/tpmC)
即测试体系代价(指在美国的报价)与流量目标的比值。
性价比越小越好!
关于这部份内容,在TPC-C的官方文档中能够找到具体的申明,你能够在以下链接取得TPC构造的官方文档:
http://www.tpc.org/tpcc/spec/tpcc_current.pdf
在IBM的官方网站上,你也能够找到部分辩明:
http://www-900.ibm.com/cn/products/servers/pseries/tech/tpcc.shtml
今朝TPC-C的版本是5.2.
本文作者:
eygle,Oracle手艺存眷者,来自中国最年夜的Oracle手艺论坛itpub.
www.eygle.com是作者的团体站点.你可经由过程Guoqiang.Gai@gmail.com来接洽作者.接待手艺切磋交换和链接互换.
原文出处:
http://www.eygle.com/special/How.To.implement.Benchmark.Test.01.htm
InnoDB数据表的索引,与InnoDB数据表相比,在InnoDB数据表上,索引对InnoDB数据表的重要性要大得多。在InnoDB数据表上,索引不仅会在搜索数据记录时发挥作用,还是数据行级锁定机制的苊、基础。 也可谈一下你是怎么优化存储过程的? 所以你总能得到相应的升级版本,来满足你的需求。 SQL语言是学习所有数据库产品的基础,无论你是做数据库管理还是做数据库开发都是这样。不过具体学习的侧重点要看你将来做哪一块,如果是做数据库管理(DBA),侧重点应该放在SQLServer的系统管理上. 我们学到了什么?思考问题的时候从表的角度来思考问 我个人认为就是孜孜不懈的学习 一个百万级别的基本信息表A,一个百万级别的详细记录表B,A中有个身份证id,B中也有身份id;先要找出A中在B的详细记录。 对一张百万级别的表建游标,同时又没有什么过滤条件,取得游标效率是如果直接SQL查询百万条数据;如果再对每条记录做处理,耗时将更长。
页:
[1]