admin管理员组

文章数量:1568355

2024年6月28日发(作者:)

2012年2月 

计算机工程与设计 

COMPUTER ENGINEERING AND DESIGN 

Feb.2012 

VoL 33 No.2 

第33卷第2期 

在线事务处理系统性能评测框架研究 

马宗庆,周海鹰,左德承 

(哈尔滨工业大学计算机科学与技术学院,黑龙江哈尔滨150001) 

摘要:在线事务处理(online transaction processing,OLTP)系统在不同的应用环境下存在着模型的差异,但是作为典 

型的数据库应用系统,其在不同应用下的性能评测又存在着一定的共性。针对用户自身应用领域的性能评测环境,提出了 

种针对OLTP系统进行性能评测的通用框架,用户可以动态配置数据规模、事务混合比例等测试参数。在框架基础上, 

以银行中间业务这一典型的0LTP应用为例,实现了面向银行中间业务的OLTP性能评测系统,通过实验验证了评测系统 

及所提框架的有效性。 

关键词:在线事务处理;性能评价框架;基准测试;银行中间业务;负载模型 

中图法分类号:TP311.56 文献标识号:A 文章编号:1000—7024(2012)02—0545—06 

Study on performance evaluation framework oriented to online 

transaction processing system 

MA Zong—qing,ZHOU Hai—ying。ZUO De—cheng 

(School of Computer Science and Technology,Harbin Institute of Technology,Harbin 150001,China) 

Abstract:As a typical database application system,although 0LTP(online transaction processing)systems have different 

operation models in different application environments,there are still some common features,especially in the performance 

evaluation field.In order tO establish an OLTP-oriented performance evaluation environment being adaptable to different application 

requirements。a performance evaluation framework dedicated to()I-1、P system is proposed.in which testers Can easily customize the 

database model and configure the transaction model dynamically.Based on this evaluation framework,an OLTP-oriented bank inter- 

mediary business test s ̄tem is presented to illustrate the test flow and to verify the effectiveness of this evaluation framework. 

Key words:online transaction processing;evaluation framework;benchmark testing;bank intermediary business; 

workload mode】 

0引 言 

在线事务处理(online transaction processing,OLTP) 

系统广泛应用于各个行业中,比如银行、电信、移动计费 

高额的成本,开发周期长且实施难度大。此外,用户的实 

际应用环境多种多样,不仅仅局限于TPC-C的商品批发销 

售模型和TPC-E的证券交易模型,这可能会导致基准测试 

的结果与用户在实际应用中的情况存在差距。对此,最理 

想的方式是根据业务应用环境,用户建立接近自身实际应 

用的性能评测环境,这就使得如何为用户提供快速建立评 

测系统的方法成为了人们关注的问题,针对这一问题,提 

出了一种易拓展可维护的OLTP系统性能评测框架。 

作为典型的OLTP应用,银行中间业务近年来发展迅 

系统、证券交易系统、税务报税系统等,毫无疑问的成为 

了信息化社会的心脏,其性能受到了普遍关注。 

事务处理委员会TPC组织推出了一系列针对OLTP系 

统的性能测试基准,如TPC-C[ 及最新提出的TPC-E[2], 

但是对于用户来说这些基准测试需要庞大的软硬件环境、 

收稿日期:2011—04—27;修订日期:2011-06 26 

基金项目:国家863高技术研究发展计划基金项目(2008AA01A204);科技部国际合作计划基金项目(201ODFA144OO);国家自然科学基 

金项目(61003047);教育部博士点基金项目(2O0802131024);哈尔滨市科技创新人才研究专项基金项目(2009RFLXG009);国家科技支 

撑计划基金项目(2011BAH04B03) 

作者简介:马宗庆(1988一),女,黑龙江五大连池人,硕士研究生,研究方向为计算机性能评价;周海鹰(1975一),男,湖北荆州人,副 

教授,研究方向为移动计算、嵌入式计算、无线传感器网络、容错计算;左德承(1972一),男,黑龙江五常人,教授,博士生导师,CCF 

高级会员,研究方向为容错计算、移动计算。E-mail:mzq.105@163.com 

546・ 计算机工程与设计 2012年 

速,对应用在该环境中服务器的OI TP性能进行研究具有 

数量、不同的事务类型下进行测试,这就要求为测试人员 

提供可配置的用户接口。 

(3)可再现:再现性是性能评测的基础,在遵循相同 

定的实际意义。本文选择以银行中间业务应用为例,基 

于提出的框架实现银行中间业务OLTP性能评测系统并进 

行实验分析。 

的测试流程和度量的情况下,保证了不同测试人员执行同 

样的测试所获得结果具有可比性,这就要求测试独立于所 

使用的实现手段,且不受系统输入的影响l6。]。 

基于上述思路,进行OLTP系统性能评测框架的 

设计。 

1在线事务处理系统性能评测框架提出 

性能评测的一般步骤包括:测试目标确定、负载模型 

定义、测试系统实现、测试环境及数据初始化、测试执行 

及指标监控,结果分析及测试报告撰写,然后根据测试报 

告的结果,调整系统配置并优化_3 ]。 

2在线事务处理系统性能评测框架 

评测框架如图1所示,主要由一台中心控制客户端、 

多台负载模拟客户端及待测的OLTP性能服务器(system 

伴随多种应用的出现,OLTP系统变得越来越复杂, 

但仔细分析测试过程中的各个步骤,不难发现不同应用环 

境下的OI TP性能评测系统有着相似的特征。 

(1)模拟用户操作且可拓展:评测系统通过模拟特定 

应用环境下的用户行为来产生基本工作负载,这就要求评 

under test,suT)构成,各个部分通过网络进行通信。中 

心控制客户端控制整个测试过程;负载模拟客户端模拟实 

际特定应用环境中用户的操作,产生评测系统的基本工作 

负载E ;待测的OLTP性能服务器通常是数据库服务器, 

在其上完成典型的事务处理过程;记录监控模块及结果统 

计分析模块是中心控制客户端的部分功能,需要模拟客户 

测系统具有产生虚拟用户以模拟实际用户产生事务请求、 

接受响应的功能。此外,根据OLTP系统多用户高并发、 

高吞吐量的特点,单个测试客户端无法满足需求,这就要 

求测试系统能支持多个测试客户端。 

端和待测系统提供必要的信息;值得注意的是,在实现性 

能评测系统前,需要针对待测服务器应用所在特定领域建 

立负载模型,后面将详细进行介绍。 

(2)可配置:不同的测试目的,测试人员会制定不同 

的测试计划,如要求系统在不同的数据规模、不同的用户 

图1 OLTP性能评测框架结构 

2.1评价指标 

易处理类指标和资源利用率类指标[1 。对于资源利用率 

类指标,可以通过一些工具在测试过程中进行监控分析获 

得,而对于交易处理类指标,通常需要在测试系统中记录 

和计算,因此评测框架重点关注这类指标。 

(1)并发用户数(PCN):并发用户数是指同时进行事 

务请求的用户个数。该指标主要反映待测服务器的并发事 

任何性能测试基准都离不开评价指标,不同的应用模 

型、测试需求,会导致测试人员关注的测试指标不同,如 

从终端用户的角度可能会关注用户的体验,从应用运营商 

的角度可能侧重于系统总的事务处理能力及资源的使用情 

况。一般而言,可将OLTP性能评价指标分为两类,即交 

第33卷第2期 马宗庆,周海鹰,左德承:在线事务处理系统性能评测框架研究 ・547・ 

务处理能力,可根据测试需求在测试开始前配置。 

(2)事务响应时间(TRT):事务响应时问是指从用户 

发送事务请求时刻到接收到事务响应信息时刻的时间间隔。 

不同的事务类型具有不同的处理逻辑,对应着不同的事务 

响应时间。该指标通常在负载模拟客户端计算得出。 

(3)每秒事务数(TPS):每秒事务数是指每秒钟处理 

的有效事务数。该指标是OLTP系统性能评测中常用的指 

标,如TPC-C及TPC-E基准将其作为标准度量指标。 

2.2应用负载模型定义 

(1)数据模型 

评测框架中需面向应用对数据模式和数据约束进行定 

义。数据模式是特定应用的逻辑结构,主要是数据表的定 

义,包括属性、字段长度及约束的定义;对于数据约束, 

包括各个数据表记录条数的比例关系、同一数据表中不同 

类别信息记录条数的分布等。 

不同的测试需求对初始数据规模的要求也是不同的, 

评测框架允许数据库管理员在创建定义的数据表后,通过 

中心控制客户端进行配置,包括客户表记录数这样的数据 

规模信息以及一个客户对应多少账户这样的数据依赖信息, 

形成的XML配置文件交由数据加载模块处理。数据加载可 

采用如sqlldr(面向Oracle数据库)等工具从文件载入或在 

线导人的方式,可利用多线程技术加快数据导人速度[12 14]。 

(2)事务模型 

OLTP系统性能测试是为了知晓服务器是否满足实际 

的应用需求,这就使性能评测中事务的定义变得非常重要。 

事务的定义需要对实际应用的特点进行分析归纳,从中抽 

象出各类具有代表性的用户行为,例如TPC-E基准根据证 

券交易应用环境的特点定义了12种事务。在事务定义的基 

础上,需建立事务相关约束,比如事务发生规律、事务之 

间可能的依赖关系、不同的事务的发生比例等。性能评测 

框架通过中心控制客户端的配置功能为事务产生比例的定 

制提供支持,对于事务约束的保证交由模拟客户端产生负 

载时处理[15]。 

2.3待测服务器端 

事务处理性能的待测服务器一般为数据库服务器,设 

计待测服务器端逻辑结构如图2所示。网络通讯模块负责 

接收负载模拟客户端的事务请求信息并返回事务响应信息; 

服务处理模块负责请求事务的调用及事务响应包的封装, 

这里涉及到数据库连接方式的选择,如一个模拟用户对应 

个数据库连接、采用数据库连接池等;对于事务的实现, 

具体的事务逻辑与应用负载模型定义有关的,一般可采用 

SQL语句交互或数据库存储过程的方式实现。 

2.4中心控制客户端 

中心控制客户端为测试人员提供简便易用的图形界面, 

支持对多个负载模拟客户端的协同控制,主要功能包括测 

试配置及性能指标监控分析,如图3所示。 

图2待m,latL务器端逻辑结构 

事务混合比例 各客户端当前运行状态 

测试持续时间 

用户增长规则 并发用户数 响应时间 

模拟客户端配置 

SU1配置 

每秒事务数 CPU利用率 

启动测试 性能监控 

结束测试 报告查看 

图3 中心控制客户端GUI 

对于测试配置,测试人员指定事务混合比例、测试时间 

和用户增长方式;在模拟客户端配置模块指定模拟客户端的 

名称或IP地址,并配置其产生虚拟用户(virtual users)的数 

量,根据用户需要可以配置多个模拟客户端;在SUT配置 

模块配置待测数据库服务器的地址和数据规模。中心控制 

客户端根据各项配置信息形成XML配置文件,通过网络提 

供给各个模拟客户端及待测服务器。对于关注的交易处理 

类指标,在测试过程中,客户端当前运行状态窗口提供某 

个特定客户端当前运行状况的显示,性能监控窗口提供各 

个客户端总的性能指标的实时显示,另外,中心控制客户 

端提供测试结束后获取各项详细测试信息的功能,用于测 

试结果分析及测试报告的撰写。 

2.5负载模拟客户端 

首先,负载模拟客户端需要协调管理模块,它在测试 

开始时从中心控制客户端获得配置信息,如虚拟用户数, 

以及与数据规模有关的信息,根据配置启动等量的用户线 

程,并负责与中心控制客户端的交互,将虚拟用户统计的 

性能信息交由中心控制客户端处理和显示。 

负载模拟客户端的核心功能是模拟特定应用环境下用 

户的操作,在客户端程序中实现多个虚拟用户以模拟 

OLTP系统多用户并发的特点,每个虚拟用户即是事务请 

求的发起者,也是SUT响应的接收者,通常还负责性能信 

息的记录,如图4所示。用户操作会有一个时间间隔,即 

Think Time,时间管理模块控制虚拟用户每隔Think Time 

计算机工程与设计 2012年 

长的时间间隔产生事务请求;事务类型的产生需符合中心 

控制客户端配置文件中的事务混合比例,事务参数的生成 

需读取数据规模信息,以保证参数的有效性;网络通信模 

块将事务信息发给SUT并等待SUT的返回结果;执行结 

果记录模块在通信模块发送事务请求前和接收到响应信息 

之后记录时间,计算事务响应时间并记录事务的执行状态, 

向用户控制台返回实时监控所必须的信息,并在本地形成 

事务处理日志文件。 

图4虚拟用户模块 

3基于评测框架的OLTP性能评测实例 

银行中间业务是典型的OLTP应用,近年来发展迅速, 

服务器的事务处理性能受到了人们的关注,对此,应用前 

面提出的在线事务处理性能评测框架实现面向银行中间业 

务的OLTP性能评测系统。 

3.1银行中间业务应用负载模型定义 

银行中间业务应用环境中包括客户、第三方合作者及银 

行自身3类实体,根据应用定义数据库模型,部分核心数据 

表及其约束关系如图5所示。在此基础上定义数据表间依赖 

关系,如Customer最少有一个账户,3O 的Customer可以 

有2到3个账户,4%的Customer拥有3个以上的账户。 

图5银行中间业务负载模型部分核心数据表及约束关系 

根据银行中间业务特点建立事务模型,包括8种事务, 

即签约事务、签约修改事务、签约取消事务、代收代缴事 

务、代发代付事务、账户余额查询事务、用户签约查询事 

务、用户交易记录查询事务,其中部分代收代缴和代发代 

付事务会按时间周期性产生。以签约事务为例简要说明事 

务逻辑,签约事务模拟客户在网点或通过电子渠道办理签 

约交易的过程,主要考虑第三方或个人客户与银行签约, 

如图6所示。 

甲¨一编 雌 者 圉 签约请求 I 

1.2用户服务委托 1

4第三方合作者服务委托 

2签约非用户指定参数生成 

>3生成签约记录 

41签约凭据 

4 2签约凭据 

图6签约事务时序 

3.2银行中间业务OLTP性能评测系统 

按照在线事务处理性能评测架构,银行中间业务性能评 

测中心控制客户端以一个线程对应一个客户端的方式实现, 

提供测试参数可配置、性能指标可实时监控显示的功能。 

初始数据库建立及数据加载模块根据中心控制客户端 

配置的XML文件,利用多线程技术,在保证如月份值在1 

到12之间这样基本的约束以及银行中间业务数据模型定义 

的必须约束的条件下在线随机生成数据,并在数据导入后 

建立外键约束。根据OLTP系统高并发的特点,待测数据 

库服务器端的实现采取为一个模拟用户建立一个数据库连 

接的方式实现,对接收到的事务请求信息进行解析后,调 

用对应的以存储过程方式实现的银行中间业务事务。 

银行中间业务性能评测模拟客户端采用多线程技术实 

现,即客户端的一个线程对应一个虚拟用户。为保证产生 

的事务类型符合测试人员配置的事务混合比例,虚拟用户 

产生事务请求的流程如图7所示。 

事耄 合/比例 /  // 事务类型 

定义随机值的总数(如100),设置每种 

事务类型对应的数值(总数乘以混合比 

例),得出每种事务对应的的取值区间 

随机数据生成 

将随机值所在区间对应的事务类型 

作为待请求的事务类型 

事务输入参数生成 

发送事务请求包 

事务请求产生结束 

图7虚拟用户事务请求产生流程 

第33卷第2期 

3.3实验及结果分析 

马宗庆,周海鹰,左德承:在线事务处理系统性能评测框架研究 

从0增加到150的过程中,银行中间业务的每秒事务数基 

基于实现的银行中间业务OLTP性能评测系统,以 

HP Superdome服务器作为待测服务器进行评测实验,测试 

本呈线性增长,随后增长速度下降,当用户数增加到200 

时,每秒事务数达到最大值。由此,可说明对于银行中间 

环境如表1所示。 

表1待测系统配置 

通过中心控制客户端配置客户端模拟8O个并发用户, 

并设置事务混合比例如表2所示。测试过程中,通过中心 

控制台的性能指标监控窗口对性能指标进行监控,以每秒 

事务数为例,如图8所示。测试结束后统计测试中实际的 

事务混合比例如图9所示,从图中可以看出实际的比例基 

本符合测试前设置的事务混合比例。 

表2事务混合比例配置 

时间 

图8测试过程中TPS监控曲线 

为衡量系统在不同负载即不同并发用户数量下的运行 

情况,使用相同的数据规模和事务混合比例进行了一组测 

试,统计分析结果如图1O所示。从图中可以看出,用户数 

业务,系统在当前配置条件下,最佳用户数为150,最大用 

户数为200。 

图9 实际事务混合比例 

图1O TPS与PCN统计关系 

4结束语 

本文提出了一种面向在线事务处理系统性能评测的框 

架,允许不同应用领域的用户快速建立面向自身应用环境 

的评测系统,并可根据测试需求动态地配置数据规模、并 

发用户数等测试参数。基于该框架,本文实现了面向银行 

中间业务的性能评测系统,并通过实验验证了该评测系统 

及本文所提框架的有效性。后续将考虑在本文框架下实现 

其他OLTP应用模型,建立集成性能评测环境。 

参考文献: 

E1]Transaction Processing Performance Council(TPC).TPC-C 

BENCHMARKTM Standard Specification Version 5.11 rS]. 

http/www.tpc.org,2011. 

[2]Transaction Processing Performance Council(TPC).TPC-E 

BENCHMARKTM Standard Specification Version 1.3.0 IS]. 

http/www.tpc.org,2008. 

[3]LI Xiaohua,JIAO Limei,WANG Qirong.ServerSeope:a 

framework for integrated performance evaluation system[J]. 

Computer Engineering,2005,31(16):51—53(in Chinese). 

[李小华,焦丽梅,王启荣.ServerScope集成性能评测框架 

IJ].计算机工程,2005,31(16):51—53.] 

[4]JIAO Limei.Reaearch and implementation of large-scale per— 

・550・ 计算机工程与设计 2012焦 

formance evaluation[J].Computer Engineering,2005,31 

2008:55—66. 

(1):22—24(in Chinese).[焦丽梅.大规模性能评测方法的 [1O]PU Ytmming,WANG Baoyu.Web testing based on performance 

研究与实现[J].计算机工程,2005,31(1):22—24.] 

criteria of load testing[J].Computer System&Applications, 

Es]LIU Ying,JIAO Limei,SUN Ninghui.Study of TCP/IP load 

2010。19(5):220-223(in Chinese).[浦云明,王宝玉.基于 

generator based on ServerScope EJ].Journal of Chinese Com— 

负载性能指标的Web测试EJ].计算机系统应用,2010,19 

purer,2005,26(5):850—854(in Chinese). [刘莹,焦丽 

(5):220—223.] 

梅,孙凝晖.基于ServerScope的TPC/IP负载发生器的研究 

[11]JIANG Zhenming.Automated analysis of load testing results 

[J].小型微型计算机系统,2005,26(5):850—854.] 

[c].Proceedings of the 1 9th International Symposium on 

[6]XIE Jingmin,YE Xiaojun,LI Bin,et a1.A configurable Web 

Software Testing and Analysis,2010:143—146. 

service performance testing framework Ec].10th IEEE Inter— [12]Joseph E Hoaq,PCraiq W Thompson.A parallel general-pur— 

national Conference on High Performance Computing and Com— 

pose synthetic data generator[J].ACM SIGMOD Record, 

munications,2008:312—319. 

2007,36(1):19 24. 

[7]DU Naiqina,YE Xiaojun,WANG Jianmin. Configurabel El3]HuANG Feng,wu Huarui,ZHU Huaji,et a1.Research 

OLTP database performance testing framework lJ].Journal of 

and realization of performance testing tool of Web application 

Computer Research and Development,2009,46(S1):326 

IJ].Computer Engineering and Design,2008,29(13): 

330(in Chinesse). [杜乃乔,叶晓俊,王建民.可配置的 

3465—3467(in Chinese).[黄锋,吴华瑞,朱华吉,等.web 

OI TP数据库系统性能测试框架[J].计算机研究与发展, 

应用性能测试工具研究与实现EJ].计算机工程与设计, 

2009,46(S1):326 330.] 

2008,29(13):3465—3467. 

E8]Seetharami Seelam,I-Hsin Chung,Gucjing Cong,et a1. [14]Wong M,Madel R DBT 5:A fair usa4 ̄e open-source TPC-E 

Workload performance characterization of DARPA HPCS 

implementation for performance evaluation of computer systems 

benchmarks[C].10th IEEE International Conference on High [C].xxvIi Brazilian Computer Society Conference,2007. 

Performance Computing and Communications,2008:342—351. 

[15]DU Naiqiao,YE Xiaojun,WANG Jianmin.Towards work— 

Eg]Thakkar D,Hassan A E,Hamann G,et a1.A framework for 

flow-driven database system workload modeling[C].Pro— 

measurement based performance modeling[c].Proceedings of 

ceeding of the Second International Workshop on Testing Data 

the 7 th International Workshop on Software and Performance, 

base Systems,2009:1-6. 

(上接第522页) 

ElO]HUANG De-tian,CHEN Jian-hua.Code optimization of DSP 

nese).[赵渊.基于DM6437的视频目标跟踪算法实现与优化 

image processing EJ].Chinese Journal of Optics and Applied 

[D_.成都:电子科技大学,2010:49 50. 

Optics,2009,2(5):452—459(in Chinese). [黄德天,陈 

[13]CHENG Pang.Video background/foreground detection imple— 

建华.DSP图像处理的程序优化口].中国光学与应用光学, 

mentation on TMS32OC64/c64x+DSP[R].Texas Instru— 

2009,2(5):452 459.] 

ments,2007:2-13. 

[11]TIAN Liyu,HE Peikun,ZHU Mengyu.TMS320C600 series 

r14]Texas Instruments.TMS320C64x/C64x+DSP CPU and in— 

DSP programming tools and guidelines[M].Beijing:Tsing 

struction set reference guide[DB/OI ].http://focus.ti.corn/ 

hua University Press,2006:240—272(in Chinese). [田黎 

1it/ug/spru732j/spru732j.pdf,2010.07/2011.03. 

育,何佩琨,朱梦宇.TMS320C6000系列DSP编程工具与指 

[15] ̄A3qG Junning,HE Di,MA Juan,et aL TI DSP/BIOS user 

南[M].北京:清华大学出版社,2006:240—272.] 

nad driver developer’s guide[M].Beijign:Tdnghua University 

[12]ZHAO Yuan!Video object tracking algorithm implementation 

Press,2007:36—44(in Chinese).[王军宁,何迪,马娟,等. 

and optimization based on DM6437[D]_Chengdu:University of 

TI DSP/B10s用户手册与驱动开发[ⅣI一.北京:清华大学出版 

Electronic Science and Technology of China,2010:49—5O(in Chi— 

社,2007:36—44. 

本文标签: 事务性能测试评测客户端