如何规划和选择数据库服务器rperf和TPC-C

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

如何规划和选择数据库服务器?

当一个新的业务系统开发完成后,需要在一个区域乃至全国推广此应用软件,如何根据业务规模来选择服务器配置、内外置磁盘大小、以及网络带宽,是一件复杂的事情。

一个最真实的评估,是建立一个接近真实业务应用的操作环境,进行各种压力测试,测算出不同的用户数量下,系统的响应时间和吞吐量,并得出当时服务器的各种资源的利用率情况,对硬件资源的完整评估,需要考虑下列三个方面:

服务器性能的评估

客户端工作站或前端桌面的评估

通讯网卡和网络带宽的评估

如果不能建立准确的压力测试环境,需要根据工业界的Benchmark对服务器进行评估,推算出符合业务规模的服务器配置,同时要考虑在做系统管理时所消耗的资源,如在做备份、恢复、问题诊断、性能分析时、软件维护时都会对资源带来附加的消耗,对重要资源要考虑为将来留下升级和可扩展的余地,下列是一些通用的原则:

处理器:要考虑高峰时的处理器的能力,并适当保留一些缓冲,确保在业务增长时,系统有扩展的余地。如果要保持快速的响应能力,应当为CPU保留20%至40%的富余量。

内存:要为运行在此服务器的所有应用软件考虑内存,所需要的内存主要依赖于用户数、应用程序类型、进程的方式、和应用程序处理的数据量决定。

磁盘:评估业务的实际用户的数据量,以此推算出磁盘的最小个数,不要忘记选择备份设备(如磁带机)。

IO槽:尽量保留更多的IO槽,防止将来插更多的PCI卡。

网络:选择合适的网卡,保证网络不是系统的瓶颈。

在评估数据库服务器性能时,最困难的事情是如何把握准确度问题,到底考虑哪些因素等。理想情况下,应考虑下列要素:

交易的复杂性

交易率

数据读/写比例

并发连接数目

并发交易数目

数据库最大表的大小

性能度量的目标

根据各种Benchmark测试结果和对各种生产系统的检测,下表概括了CPU、磁盘、内存页面、网络和虚存页交换的利用率,可看出一个服务器如果其利用率保持在Good 所标示的范围内时,是一种理想的模式。

基于rPerf的推算,评估数据库服务器的CPU

rPerf(Relative performance)是从IBM公司解析模型得出的商务处理性能估计值。该模型模拟部分系统的操作,如中央处理器、高速缓存和内存,该模型没有模拟磁盘和网络的输入/输出操作。虽然采用了一般数据库和操作系统的参数,但该模型不能反映出具体的数据库或AIX版本。除非单独说明,否则rPerf均在系统推出时估计。IBM pSeries 640-B80为基准参照系统,其值为本。虽然rPerf可用于比较商业处理性能,但实际的系统性能可能不同,取决于许多因素,包括系统硬件配置和软件设计与配置。

评估数据库服务器的性能,需要理解交易的类型、高峰期的情况、用户数量、在高峰时每个用户的交易数量。假如在高峰时,有三种典型的交易类型:轻的、一般的、重的。需要知道高峰时,每种交易的并发用户数目。假定高峰时间为:10:00-11:00,每个用户的交易数目如下:

轻的交易=120 交易/用户

一般的交易= 60 交易/用户

重的交易= 15交易/用户

每个交易所使用的CPU秒

评估出交易类型后,需要评估出运行每个交易所消耗的CPU秒,如果假定B80服务器每秒中支持10个交易,则每个交易需要消耗0.1个CPU秒。如果不知道如何评定CPU秒,则根据应用类型参照下列表。

基于rPerf的推算,评估数据库服务器的CPU

rPerf(Relative performance)是从IBM公司解析模型得出的商务处理性能估计值。该模型模拟部分系统的操作,如中央处理器、高速缓存和内存,该模型没有模拟磁盘和网络的输入

/输出操作。虽然采用了一般数据库和操作系统的参数,但该模型不能反映出具体的数据库或AIX版本。除非单独说明,否则rPerf均在系统推出时估计。IBM pSeries 640-B80为基准参照系统,其值为本。虽然rPerf可用于比较商业处理性能,但实际的系统性能可能不同,取决于许多因素,包括系统硬件配置和软件设计与配置。

评估数据库服务器的性能,需要理解交易的类型、高峰期的情况、用户数量、在高峰时每个用户的交易数量。假如在高峰时,有三种典型的交易类型:轻的、一般的、重的。需要知道高峰时,每种交易的并发用户数目。假定高峰时间为:10:00-11:00,每个用户的交易数目如下:

轻的交易=120 交易/用户

一般的交易= 60 交易/用户

重的交易= 15交易/用户

下面举例说明如何计算所需的rPerf值,假定某公司的情况如下:

业务高峰时间: 10:00-11:00=1Hour=3600秒

交易类型: 无复杂查询的简单应用

相对交易类型,用户数目分布:轻的=2000, 一般=50, 重的=5

在高峰时,每个用户的交易数量:

轻的=120交易/用户

一般=60交易/用户

重的=15交易/用户

对于rPerf=1的服务器,每个交易响应的CPU秒

轻的=1

一般=3

重的=15

最大的CPU利用率:60%

根据上述公式,可推算出不同交易类型所对应的rPerf值。

轻的交易:NU*TX*CS/PP=2000*120*1/3600=66.0

一般交易:NU*TX*CS/PP=50*60*3/3600=2.5

重的交易:NU*TX*CS/PP=5*15*15/3600=0.3

所需的总的rPerf/MC=(66.0+2.5+0.3)/0.7=98.3 rPerf

基于TPC-C的推算,评估数据库服务器的CPU

TPC-C基准是事务处理委员会建立的一个专门演示在线事务处理性能(OLTP)的性能基准,它的测量方法是为了使客户能够评估不同的在线事务处理系统的性能,这些事务进程于一个可控制的状态下在一个标准的数据库中运行。

TPC-C测试包括5个典型的OLTP事务,它们是:

新订单:一个用户提交一个新的订单

支付:更新用户的账户余额以反映一个支付

交付:订单的交付(通过一个批事务处理实现)

订单状态:返回用户最新订单的状态

库存水平:监控当前仓库库存

TPC-C的事务处理是在一个9个表的数据库上实现的事务处理过程包括:更新、插入、删除、终止,以及对主和次级键的访问,每种事务处理90%的响应时间应小于或等于5秒,其中,库存水平的响应时间可以在20秒以内。

TPC-C的吞吐量值是终端活动水平的直接结果,如每一个仓库有10个终端,在每一个终端上上述5个事务都是可用的,一个远程的终端仿真器被用来在性能测试过程中进行必要的事务混合工作。这个混合代表着一个完整的订单商务处理流程:录入、支付、检验、交付。更专业的是,这个必要的混合被定义为产生一个相等数量的新订单和支付事务,以及在每10个新订单事务中产生一个交付事务,一个订单状态检验事务和一个库存水平检验事务

远程终端仿真器也被用来测量每一个事务的响应时间,以及用来模拟键入时间及思考时间,键入时间是指在终端上录入数据所花费的时间,思考时间是指操作人员在终端读取事务的结果,进行下一个事务请求之前所花费的时间。每一个事物都有一个最小键入时间和最小思考时间。另外,这个响应时间必须在一个给定的极限值之下。

TPC-C基准测试的结果--TPC-C的吞吐量(tpmC),代表的是系统的最大的持续性能,它被定义为系统每分钟可以处理多少个新订单事务,与此同时,系统还在处理其他四种事务类型

相关文档
最新文档