TPCC值的测算.docx
《TPCC值的测算.docx》由会员分享,可在线阅读,更多相关《TPCC值的测算.docx(10页珍藏版)》请在冰豆网上搜索。
![TPCC值的测算.docx](https://file1.bdocx.com/fileroot1/2023-1/3/309756bc-9350-4ce4-ab63-de820cfbe971/309756bc-9350-4ce4-ab63-de820cfbe9711.gif)
TPCC值的测算
TPC-C值的测算
1.2.内存估算
该服务器内存主要由操作系统占用内存、数据库系统占用内存、并发连接占用内存等几部分组成。
约定:
操作系统占用约400M内存空间;
数据库系统占用内存0.8G;
每个并发连接占用5M;
考虑服务器内存保留15%的冗余;
则服务器的内存估算为:
Mem=(400M+0.8GB +100*5M)/(1-15%) =2GB
1.3.存储容量估算
预算管理系统中存储着预算编制数据等资料信息以及日志等管理信息。
在已经考虑了数据冗余的前提下,约定:
?
每月有100个分局或部室编制预算;
?
每月每个分局或部室编制1次预算;
?
预算模板共含6000个预算指标;
?
每个预算指标含5条明细项目;
?
每条记录占用空间300B;
每月的预算数据存储容量需求:
6000*5*100*500B=1.5G
每月的日志数据存储容量需求:
0.1G
每月进行数据备份一次,数据存储容量需求:
12*9G=108G
整年总共需用存储容量:
12*1.5G+1.5G+12*0.1G+12*9G=20.7G+108G=128.7G
约定系统中预算编制数据等资料信息以及日志等管理信息在线保存5年(备份数据每年进行清除),则预算管理系统的存储容量估算为:
5*20.7G+108G=103.5G+108G=211.5G
1.4.服务器安装软件
该服务器中将需要安装的软件如下:
操作系统为:
Windows2000Server
数据库:
Oracle
1.5.建议配置
根据以上的性能指标建议数据库服务器标准配置如下:
应用名称功能描述数量说明
数据库服务器CPU:
TPCC值应大于18,285TPM
内存:
2G及以上
硬盘:
211.5GB以上(建议通过RAID5或镜像等方式进行数据备份)
以太网卡:
100M及以上1
TPC-C学习笔记
户总希望有一种简单、高效的度量标准,来量化评价服务器系统,以便作为选型的依据。
但实际上,服务器的系统性能很难用一两种指标来衡量。
包括TPC、SPEC、SAPSD、Linpack和HPCC在内的众多服务器评测体系,从处理器性能、服务器系统性能、商业应用性能直到高性能计算机的性能,都给出了一个量化的评价指标。
在如此多的标准中,用户该如何选择最适合自身应用环境的评价体系呢?
这里,我们选择了应用面较广泛的TPC和SPEC,作一个深入介绍。
■走出误区
深入TPC-C指标
TPC体系是影响最大的评测基准之一,尤其近两年,国内媒体对TPC指标的报道可谓海量。
但有多少用户真正了解其中的含义呢?
本文以TPC-C为例,让用户深入了解这项基准测试。
tpmC值在国内外被广泛用于衡量服务器系统的事务处理能力。
但究竟什么是tpmC值呢?
笔者曾向一些用户、专业媒体记者乃至某些国外大公司的技术人员问过这个问题,但回答的精确度与tpmC值的流行程度差异甚远。
不少人将之误写为TPMC,甚至与TPC组织混为一谈。
TPC(TransactionprocessingPerformanceCouncil,事务处理性能委员会)是由数十家会员公司创建的非盈利组织,总部设在美国。
TPC的成员主要是计算机软硬件厂家,而非计算机用户,其功能是制定商务应用基准程序的标准规范、性能和价格度量,并管理测试结果的发布。
TPC不给出基准程序的代码,而只给出基准程序的标准规范。
任何厂家或其他测试者都可以根据规范,最优地构造出自己的测试系统(测试平台和测试程序)。
为保证测试结果的完整性,被测试者(通常是厂家)必须提交给TPC一套完整的报告(FullDisclosureReport),包括被测系统的详细配置、分类价格和包含5年维护费用在内的总价格。
该报告必须由TPC授权的审核员核实(TPC本身并不做审计)。
TPC在全球只有不到10名审核员,全部在美国。
TPC推出过11套基准程序,分别是正在使用的TPC-App、TPC-H、TPC-C、TPC-W,过时的TPC-A、TPC-B、TPC-D和TPC-R,以及因为不被业界接受而放弃的TPC-S(Server专门测试基准程序)、TPC-E(大型企业信息服务测试基准程序)和TPC-Client/Server。
而目前最为“流行”的TPC-C是在线事务处理(OLTP)的基准程序,于1992年7月完成,后被业界逐渐接受。
TPC-C使用三种性能和价格度量,其中性能由tpmC(transactionsperminute,tpm)衡量,C指TPC中的C基准程序。
它的定义是每分钟内系统处理的新订单个数。
TPC-C还经常以系统性能价格比的方式体现,单位是$/tpmC,即以系统的总价格(单位是美元)/tpmC数值得出。
解读tpmC
从TPC-C的定义不难知道,这套基准程序是用来衡量整个IT系统的性能,而不是评价服务器或某种硬件系统的标准,而且tpmC数值的高低直接受到各个环节的影响,右表大概可以说明系统设置对tpmC测试的影响。
此处的“IT系统”包括服务器、外设(如硬盘或RAID)、服务器端操作系统、数据库软件、客户端及其操作系统、数据库软件和网络连接等。
因此,如何解读tpmC数值会因不同的采购需求有非常大的差异。
tpmC测试指标与硬件的关联度
交易类型
复杂程度
发生频率
访问表的数量(内存、磁盘IO相关)
平均逻辑IO数目
CPU的负载(%)
新订单
复杂交易
45%
8
46
53
付款
复杂交易
43%
4
8
11
交货
4%
4
70
8
订单查询
简单交易
4%
3
12
1
库存查询
复杂交易
4%
3
401
27
上述5种交易中,除付货交易是事后批处理,其余4种皆为联机交易。
要注意的是,在处理新订单的同时,系统还要处理其他4类事务请求。
通常而言,新订单请求不可能超出全部事务请求的45%,因此,当一个系统的性能为1000tpmC时,它每分钟实际处理的请求数是2000多个。
数据来源:
www.tpc.org
以服务器为例。
在很多厂家的TPC测试系统中,服务器的价格只是系统总价格的25%或更小,而硬盘的价格有可能占到总价格的30%以上,因为TPC-C要求被测系统必须保存180天的事务记录(这一趋势从一些最新的TPC-C测试结果来看,会愈演愈烈)。
如果同样的服务器被用到用户的环境中,厂家报的tpmC值就意义不大,因为用户的实际系统与厂家原来用于TPC测试的系统大不一样。
当同样的主机用在不同的系统中时,tpmC值可能有相当大的变化,现在许多用户还没有意识到这一点。
尤其需要服务器采购用户注意的是,tpmC指标更多的是衡量从Client到终端网络的性能区域(如左图所示),而不是通常误认为的服务器到企业端网络的性能。
由此可见,如果用户是建立一套全新的业务系统,那么无妨多借鉴tpmC的性能指标,如果只是采购某种或某些硬件设备,则需要参考更多的指标。
对于tpmC数值着迷的用户而言,一个现实问题是,实现高tpmC指标的代价是否能够承受,毕竟TPC-C都是很复杂的基准程序,做一个严格的测试非常消耗资源,厂商通常不会给TPC报告出全部花费的金钱和时间。
实际上,正因为tpmC(其他评测指标也大都一样)受系统优化影响较大,业界对于是否应该在测试中进行优化向来争议颇多。
在1993年,当时三大IT公司的专家就对OLTP性能测试的优化提出过反对意见——DEC的JimGray(现为TPC-C委员会专家)与WaltKohler、天腾公司(TANDEN)的CharlesLevine和IBM的SteveKiss共同发表了对OLTP性能测试指标是否应该进行人为优化的看法:
“一个好的性能测试指标是不会依赖于特殊情况下的优化。
最理想的情况应该是:
一个测试指标在测试过程中所表现出的性质和能力,以及对测试所做的优化能够确实提供对现实世界中用户实际应用的性能改进。
然而,事与愿违,某些厂商迫于标准测试指标所带来的巨大市场压力,他们花费巨大的精力在如何改进测试结果的同时还能降低价格比率,而全然不顾所做的这一切优化究竟是否给用户带来了真实的利益。
”
TPC-C学习笔记
2TPCC基准测试
TPCC值被广泛用于衡量C/S环境下,由服务器和客户端构筑的整体系统的性能,它由事物处理性能委员会(TPC,TransactionProcessingCorp)制定,TPC为非赢利性国际组织。
TPCC值可以反映出系统的性能价格比。
TPCC测试系统每分钟处理的任务数,单位为tpm,(transactionsperminute)。
系统的总体价格(单位为美元)除以TPCC值,就可以衡量出系统的性价比,系统的性价比值越小,系统的性价比越好。
需要注意的是,TPC-C值描述的是C/S整体系统的性能,它与系统的服务器和客户机的性能都有关系,也就是说,同样的服务器配置不同的客户端将会影响TPCC值,任何厂商和测试者都可以根据TPC提供的测试规范构造出自己最优的系统,当然测试的结果要经过TPC审核。
TPC-C学习笔记
TPCC基准测试
TPCC值被广泛用于衡量C/S环境下,由服务器和客户端构筑的整体系统的性能,它由事物处理性能委员会(TPC,TransactionProcessingCorp)制定,TPC为非赢利性国际组织。
TPCC值可以反映出系统的性能价格比。
TPCC测试系统每分钟处理的任务数,单位为tpm,(transactionsperminute)。
系统的总体价格(单位为美元)除以TPCC值,就可以衡量出系统的性价比,系统的性价比值越小,系统的性价比越好。
需要注意的是,TPC-C值描述的是C/S整体系统的性能,它与系统的服务器和客户机的性能都有关系,也就是说,同样的服务器配置不同的客户端将会影响TPCC值,任何厂商和测试者都可以根据TPC提供的测试规范构造出自己最优的系统,当然测试的结果要经过TPC审核。
性能测试指标介绍
TPC-C
作为一家非盈利性机构,事务处理性能委员会(TPC)负责定义诸如TPC-C、TPC-H和TPC-W基准测试之类的事务处理与数据库性能基准测试,并依据这些基准测试项目发布客观性能数据。
TPC基准测试采用极为严格的运行环境,并且必须在独立审计机构监督下进行。
委员会成员包括大多数主要数据库产品厂商以及服务器硬件系统供应商。
相关企业参与TPC基准测试以期在规定运行环境中获得客观性能验证,并通过应用测试过程中所使用的技术开发出更加强健且更具伸缩性的软件产品及硬件设备。
TPC-C是一种旨在衡量联机事务处理(OLTP)系统性能与可伸缩性的行业标准基准测试项目。
这种基准测试项目将对包括查询、更新及队列式小批量事务在内的广泛数据库功能进行测试。
许多IT专业人员将TPC-C视为衡量“真实”OLTP系统性能的有效指示器。
TPC-C基准测试针对一种模拟订单录入与销售环境测量每分钟商业事务(tpmC)吞吐量。
特别值得一提的是,它将专门测量系统在同时执行其它四种事务类型(如支付、订单状态更新、交付及证券级变更)时每分钟所生成的新增订单事务数量。
独立审计机构将负责对基准测试结果进行公证,同时,TPC将出据一份全面彻底的测试报告。
这份测试报告可以从TPCWeb站点(http:
//www.tpc.org)上获得。
tpmC定义:
TPC-C的吞吐量,按有效TPC-C配置期间每分钟处理的平均交易次数测量,至少要运行12分钟。
1.TPC-C规范概要
TPC-C是专门针对联机交易处理系统(OLTP系统)的,一般情况下我们也把这类系统称为业务处理系统。
TPC-C测试规范中模拟了一个比较复杂并具有代表意义的OLTP应用环境:
假设有一个大型商品批发商,它拥有若干个分布在不同区域的商品库;每个仓库负责为10个销售点供货;每个销售点为3000个客户提供服务;每个客户平均一个订单有10项产品;所有订单中约1%的产品在其直接所属的仓库中没有存货,需要由其他区域的仓库来供货。
该系统需要处理的交易为以下几种:
New-Order:
客户输入一笔新的订货交易;
Payment:
更新客户账户余额以反映其支付状况;
Delivery:
发货(模拟批处理交易);
Order-Status:
查询客户最近交易的状态;
Stock-Level:
查询仓库库存状况,以便能够及时补货。
对于前四种类型的交易,要求响应时间在5秒以内;对于库存状况查询交易,要求响应时间在20秒以内。
逻辑结构图:
流程图:
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)
即测试系统价格(指在美国的报价)与流量指标的比值。
性价比越小越好!
算原则:
以单台服务器性能进行计算,即确保单台服务器工作的时候可以满足系统正常运行的需要;
假设每天有1万人次来窗口办理业务,每人次办理一项业务。
即以每日1万笔前台交易为例进行综合系数的推导:
1.假设每月前台交易数(未来5年内的设计指标)为220,000(有些业务在月初、月末的处理量比较高,按月统计可以平衡此项差异);
2.每日前台交易数=220000/22=10,000,即每日1万笔;
3.忙时处理能力:
每日交易的80%在4个小时内完成,即10000*80%/4=2000(笔/小时)
4.峰值处理能力:
2000*2=4000(笔/小时),即峰值处理能力为每小时4000笔,或67笔/分,假设业务人员同时在线为100人,即每人每分钟处理0.7笔)
5.假设每笔交易对应数据库事务数=20,基准TPC指标值对应的比例=8,cpu保留30%的处理能力冗余,计算值与公布值(最优值)的偏差经验值为4(这几个参数估算的依据不足,更多的是经验值)
则tpmC值为:
tpmC=67*20*8*4/(1-30%)=61257
倒算出综合系数=61257/10000=6.1
即数据库服务器tpmC=每日前台交易数*6.1(实际计算值应不高于该值)
应用服务器的tpmC=数据库服务器tpmC*50%(一般)
应用服务器的tpmC=数据库服务器tpmC*70%(涉及大量计算的,如社保、税
tpcC值计算方法(转)
2009-05-1614:
49
计算原则:
以单台服务器性能进行计算,即确保单台服务器工作的时候可以满足系统正常运行的需要;
假设每天有1万人次来窗口办理业务,每人次办理一项业务。
即以每日1万笔前台交易为例进行综合系数的推导:
1.假设每月前台交易数(未来5年内的设计指标)为220,000(有些业务在月初、月末的处理量比较高,按月统计可以平衡此项差异);
2.每日前台交易数=220000/22=10,000,即每日1万笔;
3.忙时处理能力:
每日交易的80%在4个小时内完成,即10000*80%/4=2000(笔/小时)
4.峰值处理能力:
2000*2=4000(笔/小时),即峰值处理能力为每小时4000笔,或67笔/分,假设业务人员同时在线为100人,即每人每分钟处理0.7笔)
5.假设每笔交易对应数据库事务数=20,基准TPC指标值对应的比例=8,cpu保留30%的处理能力冗余,计算值与公布值(最优值)的偏差经验值为4(这几个参数估算的依据不足,更多的是经验值)
则tpmC值为:
tpmC=67*20*8*4/(1-30%)=61257
倒算出综合系数=61257/10000=6.1
即数据库服务器tpmC=每日前台交易数*6.1(实际计算值应不高于该值)
应用服务器的tpmC=数据库服务器tpmC*50%(一般)
应用服务器的tpmC=数据库服务器tpmC*70%(涉及大量计算的,如社保、税务)
建议:
不管是TPC-C还是SPECjbb2000,计算结果都只能作为一个横向比较的参考。
在实际应用中,决定系统性能的因素除了硬件、系统软件外,与应用软件的设计也是有很大关系的,此外,基于系统可扩展性的考虑,更多时候也倾向于一次性的采购。
从长远考虑,以政府信息化主管部门的角度考虑,建立一套评估机制是非常有用的,这其中包括:
1、通过对各单位业务系统运行情况的调查,进行历史数据的收集分析,按分类建立基准指标库。
收集的信息包括:
服务器的配置、并发用户数(每天业务量)、CPU负荷等;
2、由厂商定期提供基准值,更新基准指标库;
有了基准指标库的信息参照,不仅可以用于评估项目建设方案中服务器选型,也可以对各部门进行系统架构设计的优化提供指导。
如以下是一些指导原则:
1、数据库服务器选型:
采购两台相同配置的小型机,进行虚拟分区和并行处理,以提高系统资源的利用率;日后扩容时采取垂直扩展的方式进行升级;
2、应用服务器:
采用负载均衡的方式提高并发处理能力,一般可配置2台以上,每台的硬件配置完全可以不同,应首先考虑使用旧的数据库服务器(利旧),如需采购新的服务器,应采用水平扩展的方式逐步升级;
3、WEB服务器,可以考虑采用刀片服务器,提高扩展性和可管理性。
参考一:
金保工程建设中服务器选型建议:
参考二:
某项目计算实例
为了方便计算数据库服务器的造型,我们约定:
"系统同时在线用户数为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,285tpmC
数据库服务器关系到整个系统的稳定运行,考虑到高可靠性和高可用性,并注重设备的可扩展性和性价比,系统将配置两台TPC-C值不小于28万的高性能数据库服务器。