




已阅读5页,还剩50页未读, 继续免费阅读
(计算机软件与理论专业论文)dm3的tpcc性能测试研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华中科技大学硕士学位论文 摘要 f ( 数据库的性能直接影响着整个系统的性能,对数据库进行性能测试,从中了解 产品的性能进而提高性能是各数据库厂商一直进行的工作。事务处理性能委员会 t p c 制定的联机事务处理性能测试基准t p c c 已经得到了非常广泛的认司,使用这 一基准对d m 3 进行性能测试,将d m 3 的性能量化,并分析出其性能特点,有助于 d m 3 提高自我认识,为进一步的完善做准备。7 联机事务处理性能评测工具d m t p c c 是根据t p c c 基准的要求设计并实现 的。它被划分为数据装载、事务处理、事务特性的测试、结果统计几个模块分别实 现。在数据装载模块中根据数据库基表之间的相互逻辑关系将其划分成多个子模块 进行处理;事务处理由订购、付款、订单查询、发货和库存查询五大模块组成;而 事务的特性检验则包括原子性、一致性、隔离性和持久性检验:结果统计分为记录 数据、解析数据和统计数据三个步骤完成。 d m t p c c 的有效性检验扩展了n e a ln e l s o n 有效性验证方法。首先从性能测试 工具的角度证明它全面地测试了系统的各个性能要素。其次采用n e a ln e l s o n 方法进 行有效性检验,对未完全符合条件的部分提出修正方法,提出符合度和可修正度的 概念,将其有效性进行简单的量化。最后证明它符合t p c c 基准要求,即用基准的 要求来衡量,其测试结果是有效的。 测试方案将多个测试目标结合起来,不仅计算出系统的最大吞吐量,分析出 d m 3 的性能特点;而且用增加测试过程的方法部分弥补了d m t p c c 在满足n e a l n e l s o n 测试条件方面的不足;并参考o m c l e 应用标准基准测试的方法,测试出数据 库能承受的并发用户数。测试结果为d m 3 的改善提供了比较明确的目标。 关键字:数据库管理系统;联机事务处理;性能测试;基纂;有舞限t p c c f 华中科技大学硕士学位论文 a b s t r a c t t h e p e r f o r m a n c e o f t h ew h o l es y s t e mc o u l db ea f f e c t e dd i r e c t l yb yd b m s s o t h e r e a r em a n yd b m sc o m p a n i e sw h oa l w a y st r yt ot e s tt h e i rp r o d u c t sa n d t h e ni m p r o v et h e d e r f o r m a n c e a sa no l t pb e n c h m a r kd e s i g n e db yt r a n s a c t i o np r o c e s sc o u n c i l ,t p c c h a sb e e nw i d e l ya c c e p t e d s oi ti sv e r yv a l u a b l et ot e s td m 3 w i t ht p c cb e n c h m a r kt o q u a n t i f yt h ep e r f o r m a n c e a n df i n do u tt h ef e a t u r e so f d m 3 d m - t p c c ,ap e r f o r m a n c et e s tt o o ld e s i g n e d a n dd e v e l o p e df o ro l t p a p p l i c a t i o n s , c o m p r i s e sf o u rm o d u l e ss u c ha sl o a d i n gd a t a ,p r o c e s s i n gt r a n s a c t i o n ,t e s t i n gt r a n s a c t i o n a n ds t a t i n gr e s u l t p r o c e s s i n gt r a n s a c t i o nm o d u l ed e a l sw i t ho r d e r i n g ,p a y i n g ,q u e r y i n g o r d e r , d e l i v e r i n gi t e ma n dq u e r y i n gs t o c k i h e f o u rp r o p e r t i e s ,a t o r n i e i t y , c o n s i s t e n c y ; i s o l a t i o na n dd u r a t i o n ,a r et e s t e di nt e s t i n gt r a n s a c t i o np r o p e r f i e m o d u l e t h es t a t i s t i c i n f o r m a t i o ni sg o tf i n a l l yb yr e c o r d i n gd a t a ,a m a ! y z i n gd a t aa n ds t a t i n gd a t a t h em e t h o do fv a l i d i t yt e s to fd m t p c ce x p a n d st h en e a ln e l s o nm e t h o d f i r s t , t h et o o li sp r o v e dt oh a v er e a c h e dt h ea i m so fap e r f o r m a n c et e s tt o o ls h o u l dd o s e c o n d , t h ev a l i d i g vo fd a t a b a s eb e n c h m a r kr e s u l t si se v a l u a t e d a n ds o m ea m e n d i n gm e t h o d sa r e b r o u g h tf o r w a r df o rt h e f a u l t so fv a l i d i t yt e s t i n gr e s u l t t h ec o n c e p t so fa c c o r d a n c e d e g r e ea n da m e n d m e n td e g r e ea r ep r e s e n t e d t os i m p l yq u a n t i f yt h ev a l i d i t y f i n a l l y , i ti s p r o v e d t ob ea c c o r d a n tt ot h er e q u e s t so f t p c cb e n c h m a r k ,w h i c hm e a n s t h a tt h et e s t i n g r e s u l ti sv a l i da c c o r d i n gt ot h eb e n c h m a r k m a | 1 yt a r g e t sa r ei n t e g r a t e di n t ot h et e s t i n gs c h e m e ,w h i c h n o to n l yh a v ef i g u r e do u t t h em a x i m u m t h r o u g h p u t a n da t t a l y z e dt h ep e r f o r m a n c ef e a t u r e so fd m 3 ,b u ta l s op a r t l y m a d eu pt h ef a u l t so fv a l i d i t yt e s tr e s u l tb ye x n at e s tp r o g r e s sa n dg o tt h em a x i m t t m n u m b e ro fc o n c u t t e n , eu s e r st h a td b m sc a nb e a rj u s tl i k ew h a to r a c l ea p p l i c a t i o n s t a n d a r db e n c h m a r kh a v ed o n e t h er e s u l tp o i n to u tt h ee x p l i c i ta i m sf o rd m 3 k e y w o r d s :d b m s ;o l t p ;p e r f o r m a n c et e s t ;b e n c h m a r k ;v a l i d i t y ;t p c c _ _ - _ _ _ _ - - _ - 。- _ - - - _ _ _ _ _ - _ _ _ _ - _ _ _ - _ - _ - - _ _ _ - _ _ _ _ - _ - _ - - _ _ _ _ _ _ _ _ _ 一_ 。- 。_ 1 _ _ _ _ _ _ 。_ _ _ 。_ _ - _ - 1 。_ 。1 一 i i , 、 、- m 华中科技大学硕士学位论文 1 绪论 1 1 本课题的目的与意义 当今数据库技术已经渗透到各种应用领域,从民用的管理信息系统到军队的指 挥自动化系统都离不丌数据库管理系统,它已成为支持应用系统的核心软件矮性 能的好坏直接影响到整个应用系统的整体性能i ”。 性能对用户选择产品有着至关重要的作用。性能的重要性不可避免地提高丁陛 能测试的重要性。性能测试刺+ 厂商和用户都有着极其重要的意义。因为性能测试基 准一般都与真实环境极其相似【2j ,对厂商而言,性能测试的过程有助于在近于真实 的环境中测试自己的产品,为产品的下一步优化改善提供依据,有竞争力的测试结 果对产品的宣传作用是不言而喻的。对用户而言,性能结果育助于他们了解产品, 为选购产品提供可靠的技术依据。 t p c 基准已经取得了广泛的认可,它描述了非常接近现实环境的商业应用裒件 应用环境日】。众多公司使用各种各样硬件、操作系统和数据库的组合: 乏;镯用 t p c c i 4 】。t p c 委员会已在自己的网站上公布了所有具有可比性的t p c c 的测试结 果。 本课题的目的是设计并实现针对t p c c 基准的性能测试工具d m t p c c ,e 保 证其测试有效性的基础上,使用它对数据库d m 3 的性能进行评测,计算出量i 的 性能结果。另一方面,通过改变测试过程中的参数,如并发胃户数,数据库的对锁 粒度,数据库的大小,观察处理过程中的资源消耗,对d m 3 在不同参数下的性能 表现进行测试,分析测试结果总结d m 3 的性能特点,为d m 3 性能的进一步提高 提供有意义的参考信息。 d m 3 的稳定、成熟和高性能是众望所归的结果,而性能测试是d m 3 取搿这一 结果的必经之路,t p c 基准是众商家的共同选择,在同一条道路上竞赛,用同一的 评判标准,才能测出有意义的结果,得出量化的性能结果,同时从结果中找出萃身 存在的问题。 华中科技大学硕士学位论文 12 国内外d b m s 性能测试的现状 在d b m s 领域,百家争鸣。孰优孰劣,这对商家和用户部是至关重要的问题, 同时,这个问题推动了数据厍性能测试的发展。许多测试方法、测试标准应运而生。 1 2 1 数据库性能测试方法的研究概况 围终的组织、应用软件f 发商和数据库公司研究和设计的数据库陛能测苗方法 已经 艮善,其中一部分已经形成了业界标准,取得了广泛的认可。性能测试的方法 主要育以下四种方法。每一种方法都青极具代表性的例子,我们分别埘t p c 、s a p 和o i l 、c l e 的性能测试基准进行介绍,并皇此基础上做出总结。 1 运行实际应用测试性能 这是最理想最真接的测试万式,设置个试点要求制造商或系统集成商配合 将系统包括平台、软件和操作流程在一拿实际用户点真正试运f j :一段时间。这样 用户不仅能看到实际性能,也能观察到系统是否稳定可靠、使用是否方便、服务是 否周到、配置是否足够、全部价格是否合理。如果一个部门需要购买一批同类的系 统,第一种方法为首选,因为它不仅最精确、稳妥也最有效率。用这种方式得到 的度量值具有明确实际的含义i 5 j 。 2 丌发自己的基准测试性能 这种方法被一些实力雄厚的大型系统制造商所采用,一般用于测量本公司产品 的性能和缩放性。针对某一实际应用,提取摸型,在用户增加而系统的查询性能和 系统利用率仍然保持良好的情况下,测试并发的用户数对响应时间的影嗣程度。 o r , g , cje 和in f ( ,r m i x 两夫数据库厂商郜拥有自己的性能测试基准他们制定自 己的基准,用以测试在自已的数据库系统上运行的应用系统的性能,同时为运行在 不同系统上的同一数据库应用软件之间性能a 0 比较提供量度1 ,他们一般通过第三 方审汁保证测试的公正和可信性。 o r a c l e 应用标准基准的主要目的是为运行在不同系统上的o r a c l e 应用性能评 估提供通用的尺度,进而表现o r a c l e 应用的性能特色。它选铎最日常使用的o r a c l e 应用模块,模拟真实的顾客场景选择典型的客户工作来定义基准处理的事务,包 括o l t p 和批处理。事务的混合情况模拟了最通用的企业应用摸板和最常使用的事 华中科技大学硕士学位论文 务。其中4 个o r a c l e 的财政应用模板,3 个o r a c l e 供应连管理应用模板。l 个 o l t p 事务,7 个批处理工作代表了基准的全部负载1 7 i 。 每个用户处理过程的事务比率保持不变,不随用户数和响应时间而改变。当用 户数变化时,负载混合保持不变。在保证响应时间不超过预先定义的最大值的情况 下,对o r a c l e 应用可以承受的的并发用户进行计数。每个用户保持一个最小的每小 时执行事务的比率。事务的比率和负载的混合都不会随着系统的负载和响应时间的 增大而改变v j 。 o r a c l e 应用标准基准是可比较的标准负载,它证明了o r a c l e 应用的性能,提供 了在不同系统配置下的o r a c l e 应用性能的比较尺度。同时提供了必要的方法以保证 o r a c l e 应用性能评测的客观。基准的结果由独立的审计员通过正式的预先定义的审 核程序进行评审。 但是该基准是简单化的模板,并未涉及客户环境中更加复杂的操作。因此不能 完全代表真实环境中的性能,对于特定的问题有其局限性。 3 采用商务标准应用程序测试性能 定义一组含有实际应用环境特征的应用程序来测试系统对该类实际应用的支 持能力。软件供应商在应用软件被广泛接受以后,凭借其领导地位,设计具有代表 性的应用软件基准来测试系统,帮助该应用软件的用户选择适合自己的软硬件系统。 p e o p l e s o r 是商务应用软件研发商,b a a n 是提供企业资源计划( e r p ) 应用系 统和咨询服务的主导公司,s a p 是国际上著名的标准应用软件公司,他们针对各自 成熟的解决方案制定了相对应的基准。由于这些软件是应用层软件,既具有针对性, 又具有通用性,因此现在已经获得了越来越多国外企业的认可,它成为针对特定应 用环境测试性能的首选方式。中国税务总局采用这种测试方法开发了自己的基准程 序,以帮助税务系统进行计算机选型。 s a p 是国际上著名的软件公司,e r p 软件供应商。s a p 针对m y s a p c o m ( 电子 商务总体解决方案) 的e r p 系统、电子商务系统:决策支持系统、供应链优化管理、 业务信息优化系统等每一个方面的解决方案都有相对应的基准。一共六类,十四个 应用婵1 ,如表1 1 所示。随着应用的推广,这一系列标准也已经成为行业中认可的 标准之一。 华中科技大学硕士学位论文 表1 1s a p 标准应用基准分类 j类别应用程序基准 腆应链管理高级计划币j 优化a p o :订单装配a t o ;原材料管理m m ;生产计划p p ! 工业解决 银行顾客帐务b c a :零售:顾客服务l s u c c s 险融金融会计f i 产品生命周期管工程系统p s 俪业智能业务信息仓b w | 人力资源交叉申请时间单c a t s :薪水册p y 在以上1 4 个应用程序基准中,数据库厂商普遍使用的是标准应用程序经销基 准( s t a n d a r da p p l i c a t i o n s a l e sa n dd i s t r i b u t i o n b e n c h m a r k ,s d ) 和组装至有序 ( a s s e m b l e t o o r d e r ,a t o ) 应用基准,它们都有两种实现方案:客户机服务器两层结构和基于 i n t e r n e t 的三层体系结构。 s d 已经成为事实上的标准,成为当今处于领先地位的企业赖以对基于s a p 之 系统扩展性能进行度量的公认标准。此项基准测试通过对指定系统在确保响应时间 不超过2 秒的前提下所能处理的最大用户访问数量进行模拟,为面向电子商务环境 下的系统实际性能表现提供了关键性度量指标。s a p s t a n d a r ds d 应用基准包括两层 客户机服务器结构和基于i n t e m e t 的三层体系结构( 叭。它代表了一个订货的全过程, 包括订单生成、交付单生成、订单展示、货物清单置入、订货清单和发票生成: 在a t o 中,客户对零部件或产品的某些配置给出要求,生产商根据客户的要求 提供为客户定制的产品。所以,生产商必须保持一定数量的零部件的库存,以便当 客户订单到来时,可以迅速按订单装配出产品并发送给客户。为此,需要运用某些 类型的配置系统,以便迅速获取并处理订单数据信息,然后按照客户需求组织产品 的生产装配来满足客户需要。生产企业必须备有不同部件并准备好多个柔性的组装 车间,以便在最短的时间内组装出种类众多的产品。其特征是在较短的生产时间内 ( 每天四小时) 进行大数据量的销售【9 】。a t o 基准代表着s a p 的一个最苛刻和最具 有挑战性的基准,这个指标可以说是反映供应链管理水平以及制造业效率高低的世 界级通用标准。 4 华中科技大学硕士学位论文 这一系列基准为根据特定环境中的特定应用选择系统提供信息。是针对特定应 用环境测试性能的首选方式。 s a p 标准应用基准帮助用户和合作伙伴为他们的i t 解决方案寻找合适的配置, s a p 提供可比较的m y s a p c o m 解决方案的负载分析。 4 采用通用工业标准基准 使用通用基准程序进行性能测试,这是一种近似方法,通过模拟应用软件的负 载,来预测系统的性能表现。这种测试方法没有直接针对实际应用环境,但是它根 据实际应用的需求制定基准,模拟了真实的应用,忽略了对性能不起主要作用的一 些功能,这些功能对实际应用来说可能必不可少,但对性能的影响很小,这种模拟 和抽象降低了实现的复杂性,但又极大程度地保持了性能测试的真实性。 o l a p 委员会为推广o l a p 技术发布的a p b - l ( a n a l y t i c a lp r o c e s s i n g b e n c h m a r k 1 ) 和t p c ( 事务处理委员会) 制定的一系列针对不同应用的基准都属于这 种测试方法。o l a p 针对实际的o l a p 商业环境,而t p c 根据应用方向的不同,制 定了不同的基准,代表了不同应用系统的特点,用这些不同的基准来测试系统对不 同的应用系统的支持能力【1 0 】。在一定程度上可靠地提供了不同系统应用环境下可能 达到的理想性能参考值。 t p c 事务处理性能委员会是由数十家会员公司创建的非盈利组织,t p c 发布了 一系列测试工具,现存的有t p c c 、t p c t p c r 、t p c w 。这三类基准取自不同 的实际应用系统【2 1 ,用不同的衡量标准对三类应用进行测试。t p c 系列基准的基本 情况比较如表1 2 和表1 3 所示。 1 2 2 性能测试有效性检测方法 数据库基准的测试结果可能存在着不真实和误导的情况,这就要求对测试的有 效性进行检测,以此证明测试方法和结果能够代表实际系统的性能。n e a ln e l s o n 数 据库基准是由位于芝加哥的一家独立的创建和销售基准的供应商提出的,它提出了 测试结果有效的几个必要条件【l “。要检测性能结果的有效性,必须检测以下条件是 否成立。 1 使用一致的测试平台,避免因为平台性能差异影响数据库性能的测试结果。 华中科技大学硕士学位论文 2 考虑缓存大小和数据库大小对性能的影响。 3 数据库功能测试具有完备性,测试绝大部分的数据库功能,并对各项功能单 独做出性能评估。 4 使用d b m s 的查询优化,将用户的查询要求用d b m s 晟快最有效率的方式执 行。 5 增加数据量和并发用户的数量,将数据库在各种数量的用户和数据量情况下 的性能进行全面的测试。 6 模拟现实应用,真实地表现数据库系统对通用的商业应用的支持能力。 7 使用足够复杂的操作,在重负载情况下发现系统的问题。 表12 t p c 基准简介 沁准 t p c ct p c h rt p c w 类型联机事务处理o l t p联机分析处理o l a p电子商务应用 发布时间 1 9 9 2 年7 月发布,取代了1 9 9 9 年4 月发布,取代 2 0 0 0 年2 月发布 1 9 8 9 年1 1 月发布的t p c - a了1 9 9 5 年4 月的t p c d 模拟环境批发商销售货物零售商市场分析网上订购书籍 事务类型 三个更新事务:订购、付款、二十二个复杂查询事务十三种未同类型的 发货。两个查询事务:订单和两个更新事务网络交互事务,包 查询,库存查询括订单输入、查询 等 测试方法 五种事务并发执行的情况查询与更新事务并发时多种事务并发时测 下,测试出所产生的新订单处理的复杂查询数量试w e b 交互次数 的数量 量度单位t p m c ;每分钟发生的订购事q p h h r sj z e :当数据库w i p s :每秒钟产生 务大小为s i z e 时每小时的w e b 交互次数 $ t p m c :每个订购的代价处理的查询数$ w i p s :每个w e b $ q p h h r o s i z e :每个查交互的代价 询的代价 6 华中科技大学硕士学位论文 表1 3 t p c h 与t p c r 的差别 t p c ht p c r 查询方法随机查询 报表查询 查询内容事先未知事先已知 可否优化不可以可以通过索引、聚集和存储过程优化 1 2 3d m 3 性能测试方法的选择 1 2 1 小节中的几种方法各有千秋,从第一种方法到第四种方法针对性渐弱,通 用性渐强,t p c 和o r a c l e 有着共同的特点,都从实际应用中经过了提炼,选择 了最通常的企业应用摸板和最通常使用的事务【1 2 1 ,两者都只是提供设计思想,具体 实现由测试者自己来负责。但o r a c l e 基准的实现细节和结果由第三方审计,t p c 自身有审计的权限。相对于o r a c l e 基准,t p c 基准的分支较多,通用性较强。 e r p 是o r a c l e 应用标准基准的着重点,也是s a p 的重要组成部分。s a p 直接提 供应用程序供厂商使用,对测试结果有审计权。 一般不会有组织和机构有足够的时间和资源进行所有的测试,所以都采用经过 精心设计、可信度高的工业标准基准进行测试。我们选择通用性较强的t p c - c 对 d m 3 性能进行测试。 t p c 已经成为公认的最有影响力的性能测试基准,t p c 规范中最为重要的特点 是它描述了在不同平台保持一致且非常接近现实环境的商业应用环境【”l 。众多公司 使用各种各样硬件、操作系统和数据库的组合来调用t p c - c 。t p c 已在自己的网站 上公布了几个现有的具有可比性的所有t p c c 基准测试结果。 用它对d m 3 进行测试,有助于提供可信的被用户接收的量化性能结果。同时 通过数据库大小和并发用户数目的变化来分析d m 3 的性能特点,与s q ls e r v e r 进行比较,提高d m 3 的自我认识。 1 3 本文的主要工作 本课题按照t p c - c 性能测试基准的要求设计并实现数据库联机事务处理性能 测试工具d m t p c c ,其中包括数据录入、事务处理、事务特性测试、结果统计几 华中科技大学硕士学位论文 大功能模块;在使用它对系统进行测试前,结合n e a ln e l s o n 方法、t p c c 的约束 和性能测试的要素验证其有效性;针对多个不同的测试目的,设计测试方案,分析 测试结果,总结有效信息。 本文将重点讨论对t p c c 基准实现的系统结构,主要功能模块,测试的有效性 检验,结果的分析等方面的内容。主要工作如下。 1 分析国内外数据库性能测试的几种主要方法,针对每一种方法介绍一种典型 的应用实例介绍他们的性能特点,和各自的优缺点;引入n e a l n e l s o n 有效性测试 的条件,为后面的检测作铺垫。 2 设计并实现联机事务处理性能评测工具d m t p c c ,根据t p c c 基准的要求 设计系统的数据流并进行模块划分,重点介绍数据录入、事务处理、事务特性测试、 结果统计几大功能模块的实现。 3 检验测试的有效性。从三个方面对d m t p c c 性能测试工具的有效性进行检 验,首先从性能测试工具的角度证明它全面地测试了系统的各个性能要素。其次用 n e a ln e l s o n 的有效性测试方法进行验证,针对其不足之处,提出相应的弥补方案。 最后用t p c c 基准的要求来衡量验证d m t p c c ,证明它遵循了基准本身的模拟真 实性约束。 4 通过数据装载过程和事务处理过程测试数据库的定量性能值,和d m 3 的性 能特征;结合有效性检测的结果,对数据库性能随并发用户数增加而下降的情况和 内存使用的情况进行补充测试;参考o r a c l e 的测试思想,对系统能够承受的最 大并发用户数进行测试。对以上的测试方案将在实验数据的基础上进行理论分析, 挖掘有价值的信息。 华中科技大学硕士学位论文 2 性能测试工具d m t p c c 的设计与实现 本章首先根据t p c c 基准要求设计d m t p c c 的数据流,根据数据流进行模块 设计和划分,然后介绍测试的体系结构和环境配置。着重介绍了数据录入、事务处 理、事务特性测试、结果统计几大功能模块的实现方法。 2 1d m t p c c 的系统设计 数据库性能测试工具d m t p c c 通过模拟批发商货物管理这一典型的联机事务 处理的应用来测试系统在该类应用上的性能表现。批发公司拥有n 个仓库,每个仓 库供应多个地区的需求,每个地区为该地区的所有顾客服务。货物管理的过程中顾 客可以订购商品、付出款项、查询自己订购的商品情况。仓库统一进行发货,每个 仓库可以查询自己的库存情况,这些操作包含在订购、付款、订单查询、发货和库 存查询五个事务中。在这样的模拟环境中测试系统每分钟处理的订购事务数,以此 量化系统的性能。 2 1 1 系统数据流分析 对t p c c 基准的需求进行分析,整个测试过程的重点是事务处理。为了进 亍事 务处理,必须首先建立起所需要的数据库环境,这就要求管理员首先进行数据库的 装载。在事务处理过程中要保证事务的a c i d 特性,必须进行事务特性的检验,由 于一致性是由一个状态到另一个状态的比较,所以先保证在事务运行前数据库是一 致性状态,也就是初始一致性检验。待事务运行完毕后,为得到性能值,对事务运 行过程中的运行信息进行统计,经过记录信息、解析信息并统计信息三步得到结果 值。上述工作均围绕事务处理进行,首先建立起环境,然后保证其特性,最后统计 其信息。综上,d m t p c c 测试工具的数据流设计如图2 1 所示。 如数据流图所示,d m t p c c 测试系统首先由管理员按照要求向数据库中装载 数据,建立事务运行需要的数据库条件,并保证达到进行一致性测试的初始条件。 准备工作完成后,进入测试阶段,远程模拟终端产生输入信息并传输给事务处理模 9 华中科技大学硕士学位论文 块进行事务处理,事务处理结束后再将输出信息传输给相应的远程模拟终端显示。 事务必须保证a c i d 特性,由管理员调用特性测试模块进行测试。事务处理结束后 进行统计,记录数据到跟踪信息文件、时间文件和统计信息文件,将后两个文件中 的数据经过解析输入统计信息表和响应等待时间表,将数据库中的信息进行统计得 出结果传给管理员,同时记入文件。 数据库基表 闰2 1d m - t p c c 测试数据流图 经过以上过程,d m t p c c 便可以成功地 门阜出系统的性能结果。 2 1 2 系统模块划分 所有的数据库性能测试基准都以事务为基础来衡量性能。系统的性能由事务的 华中科技大学硕士学位论文 运行状况决定,因此事务处理是基准中的最重要部分。t p c 定义的事务来源于现实, 从实际应用中抽取出对性能起主要作用的事务,将主要的工作负载放到对新订单的 处理上。 在数据流的设计中我们已经将系统简单地划分为四个模块,分别是为事务处理 准备数据库条件的数据装载模块,事务处理模块,对事务的特性进行检验的特性测 试模块和对事务处理结果进行统计的结果统计模块。这四个模块结合在一起完成了 性能测试任务。每一个主要模块都包含有它们各自的子模块,系统模块划分如图2 2 所示。 厂面i 一 数据装载il 事务处理ii 特性测试li 结果统计 装载货栈表 装载地区表 装载仓库表 装载商品表 装载顾客表 和历史表 睫载订单表, 汀单明细表, 新订单表 订购 付款 订单查询 发货 库存查询 原子性 一致性 隔离性 持久性 记录数据 解析数据 统计数据 图2 2d m - t p c c 系统模块图 基于图2 1 和图2 2 中的数据流设计和模块的划分达到了t p c - c 基准要求的如 下目标。 1 事务类型多样化,事务处理模块中包括了更新操作和只读操作,订购、付款 和发货是更新事务,订单查询和库存查询是只读事务。 2 事务处理具有不同特征,包括在线式和延时式,前者对响应时间有严格要求, 后者对响应时间的要求比较宽松。事务处理模块中的发货事务是典型的延时式,仓 库每次发十批货,第一批要发的货和第十批的货同时发送,对第一批而言,是延时 华中科技大学硕士学位论文 式。 3 事务符合a c i d 特性,上述五个更新和只读事务必须符合事务a c i d 特性, 特性测试模块对此进行了检验。 4 事务拥有复杂的数据结构和联系,数据装载过程使数据库达到了复杂的初始 状态,事务处理也尽最大的可能模拟了现实中批发商的复杂应用。因此,其复杂性 是可以保证的。 5 进行重负载下大数据库上的多用户并发操作,在数据流图中,用户可以任意 很多,数据库中仓库数n 可以调节数据库的大小和并发用户数,当n 很大时,数据 库容量和并发用户数将会随之增大。 + 2 1 3 系统体系结构和环境配置 每一个仓库的每个地区都有1 个终端,即图2 1 中所示的远程模拟终端,如 果有n 个仓库,就会有1 0 x n 个远程模拟终端同时对数据库操作。n 是一个可变参 数,决定了数据库的大小,同时也决定了并发用户的数目。这些终端同时向数据库 发出五类请求,如图2 2 所示的订购、付款、订单查询、发货和库存查询。 将d m t p c c 测试系统划分成两部分来完成以上任务,被测系统( s y s t e mu n d e r t e s t ,s u t ) 和远程模拟终端( r e m o t e t e r m i n a le m u l a t o r , r t e ) 。 s u t 的工作包括以下内容。 1 运行数据库事务的多个处理器。 2 所有的前端设备,如数据通讯处理器,数据库客户工作站。 3 主机,包括支持数据库运行的所有硬件与软件。 4 网络层连接并且支持s u t 控件的硬件和软件。 5 能够满足需求的足够大的数据存储介质。 与s u t 相对应的r t e 在功能上模拟了目标终端用户的工作。 1 模拟用户产生输入数据并显示出来,将数据传到s u t 。 2 接受s u t 传输来的信息并将其显示出来。 - 3 记录事务和菜单的响应时间。 4 做各种统计工作,比如9 0 的响应时间,吞吐量的计算等。 华中科技大学硕士学位论文 s u t 与r t e 的体系结构如下图2 3 所示。 图2 3d m - t p c c 测试环境体系结构图 d m t p c c 首先测试d m 3 的单服务器版本,设置数据库中仓库数n 为2 ,此时 共有2 0 个地区,每个地区有一个终端,即2 0 个远程模拟终端同时向数据库发出订 购,付款,发货,订单查询和库存查询的请求。下面进行的有效性的验证和严格基 于t p c c 基准测试结果的分析都是在这样的条件下完成的。为完成上述的测试,使 用如图2 4 所示的配置。2 0 台连接在1 0 0 m 快速以太网交换机上的p c 机,一台运 行数据库的服务器,配置为i n t e lp m2 5 6 m 内存,远程模拟终端为p c 机,配置为 i n t c lp i l 2 0 0 ,1 2 8 m 内存。 i n t e lp i i i8 0 0 d m 3s e r v e r 图2 4d m - t p c c 的系统配置圈 n t e ip i i2 0 0 t p c cc i i e n t : 华中科技大学硕士学位论文 2 2 系统主要功能模块的实现 d m t p c c 中主要的功能有数据装载,事务处理,事务特性检测,结果统计几 部分。下面分别进行介绍。 2 2 1 数据装载 。 数据装载的目的是要向数据库中录入一定数量的数据,建立起事务处理所需要 的数据库环境。 数据库逻辑结构 t p c c 数据库包含有9 个单独的基表,这些基表支持这样的商业过程:某个仓 库向其属下的地区供应货物,每个地区为该地区顾客提供服务,仓库中有货栈用于 存放商品,每个货栈中存放一种商品。顾客订购商品后生成一条订购记录,产生一 条订单和新订单,而订购的每一种商品的详细细节则存放在订单明细表中,在订单 明细表中一个顾客的订购事务购买的每一种商品对应一条记录,在顾客付款以后, 向历史订单表增加一条记录以记载顾客曾经进行的订购动作,货物发货完毕后,相 应记录从新订单中删除,但仍然保留在订单表和订单明细表中。基表之间的关系用 e r 关系如图2 5 所示。 图2 5 d m - t p c c 数据库e - r 图 以上结构的基表,完整地包含了整个批发过程所需的信息,表之间复杂的引用 关系如图2 6 所示,该图表示的表依赖关系对测试结果的分析有很强的指导作用, 1 4 华中科技大学硕士学位论文 同时也是数据装载过程中模块划分的依据,因此在此做简要介绍。属性间环环相扣, 基准设计的一致性条件充分反映了属性间的相互引用关系【1 4 1 。 ! ! ! p 2 1 111 1 0 1ti d 0 1 - i d * 0 ln u m b e r ci d * 一d i d * i d * 0ci d 0i d * 图2 6d m - t p c c 的基表引用关系图 + 表示主关键字,+ 表示外关键字指向被引用的属性 当公司的业务扩展时,将会创建新的仓库以及与之相对应的销售地区。每一个 仓库包含许多记录并且在不断扩充,因此需要数据库中一定的存储空间来维持数据 的不断扩充【1 6 】。这些都要求存储空间和数据库容量与吞吐量之间成一定比例关系, 目的是为了维护被测系统的负载、事务访问的表的大小、需要的存储空间与产生事 务负载的终端数目之间成一定的比例。数据库各基表以仓库数为基础存在着明确的 比例关系,如表2 1 所示。 表2 1 数据库基表间关系表 i表名仓库地区顾客历史订单订单新订单订单明细表货栈商品 f 记录数 i1 03 0 k3 0 k3 0 k9 k3 0 0 k】0 0 k1 0 0 k 仓库是比例计算的基本单位,其他所有表的大小是仓库数目n 的函数,n 决定 了被测系统的负载。历史表,新订单表,订单表和订单明细表将会随仓库数的变化 而变化。初始数据库的大小和表之间的比例关系被设计来减小可能的变动对性能的 影响,以此保证测试结果的可重复性。 华中科技大学硕士学位论文 数据装载过程 根据数据库基表间的逻辑关系,在数据库的初始状态中,一个仓库中的顾客和 历史订单记录数相等,每一个顾客对应一个历史订单,因此每产生一个顾客,就产 生一个对应的历史订单记录,将顾客和历史订单表数据的录入安排在一个模块中完 成。 每产生一个订单记录,则会产生5 1 5 个订单明细记录,如果订单的编号大于某 一个值,那么该订单为新订单,必须产生相应的新订单记录。这三个基表之间的关 系非常密切,因此作为一个模块实现。 其它的基表可以相对独立地完成。但是因为它们之间存在着引用关系,所以必 须按照如图2 7 的顺序进行。 图2 7 基裹的装载先后关系图 a ,b 表示表a 先于表b 数据装载使数据库达到基准所要求的状态,满足各基表之间的e r 关系、引用 关系和比例关系,并达到初始一致性状态。 2 2 2 事务处理 事务由一组复杂的o l t p 应用环境系统中的基本操作组成,描述了某个行业的 最通用过程,而非所有的商业过程。事务设计目的并不是成为实际应用的范本, 而是要降低实际应用中操作的多样性,保留应用中最根本的性能特征,也就是降低 系统使用的层次和操作的复杂性【1 8 】。将大量功能集中于管理产品订单系统。另有许 多功能对性能分析而言不是主要因素,从它们系统资源的占用和执行的频度上看, 所占的比例都很小。因此虽然这些功能对实际应用系统而言是必要的,但对性能影 响很小,事务将不包括这些功能,重点放在影响性能的主要功能上。 下面从事务的主要功能和处理过程进行介绍。 1 6 华中科技大学硕士学位论文 事务主要功能 如图2 - 2 所示的订购、付款、订购情况、发货、库存情况事务组成了一个完整 的商业处理过程。其中订购、付款、发货等3 种事务为更新型事务。订购情况和库 存情况是只读型事务。 订购事务描述了顾客向批发商订购商品时发生的数据库动作。该事务的主要功 能是向订单表和新订单表中插入一条订购记录,其中每一种商品对应订单明细表的 一条记录,该记录记载了顾客订购的这种货物的种类数目等详细信息。 付款事务描述顾客订购货物后,向某个仓库的某个地区支付款项的数据库事 务,付款可以异地进行也可以是本地进行。该动作将引起所在仓库和对应地区收入 的增加,顾客本身的信息的修改。付款以后,该顾客的订购记录成为历史记录,历 史记录表中增加一条信息记录该过程。 发货事务是供应商根据顾客的定货信息,进行批量发货的事务。每一批发货的 数目由批发商决定。发货结束后,顾客定货的记录将从新订单中删除,同时修改顾 客信息。 以上三个事务均需要对基表进行插入,删除或修改。而订购情况和库存情况查 询事务则是单纯的只读型事务,为了解相关信息而查询。 订购情况查询通过顾客的姓名或者唯一标识符查询该顾客订购的商品信息。 库存情况查询是供应商为了及时补足库存进行的查询,查询最近的2 0 条订单 中的货物的库存小于某一阀值的货物的数目。 我们以订购事务为例,说明事务的处理过程。 根据t p c c 基准中订购事务的需求信息,设计订购事务的数据流如图2 8 所示。 如图2 8 所示,顾客向公司订购商品时,首先产生输入信息,通过顾客标志信 息( 仓库号、地区号和顾客号) 从顾客表和仓库表中读取顾客信息和仓库税率。使 用地区标志( 仓库号和) 读取地区订单唯一编号和地区税率,修改订单唯一编号, 由订单编号和输入信息中的订购商品数目、时间和地点等信息一起形成订单和新订 单。由仓库编号和商品编号读取商品信息和货栈信息,根据库存数量修改货栈表中 的库存信息,最后形成订单明细记录插入到订单明细表中,同时反馈给用户。 1 7 华中科技大学硕士学位论文 6 簟譬糕p 息等 货栈表 事务处理过程 5 、 读取商品 信息、货 做信息 焉磊弋形赫卜矫嗍一 1 e = l f 形成订单! i 自割用户 价格信息,货栈信息7 明细记录 i 商品表 图2 8 订购事务数据流图 订单明细表 事务处理是整个测试的关键过程,这个过程模拟了整个批发商的主要活动,产 生输入数据,处理事务,显示输出,同时记录相关信息,系统的性能由这个过程的 运行情况反映,事务处理过程如图2 9 表示: 图2 9 详细地表示出了整个事务处理的全过程。 1 首先根据比例分配从菜单中选择一个事务执行。 2 等待输入界面出现。 3 从选择一个事务执行到输入界面出现为菜单响应时间,记录菜单响应时间。 4 延迟一定的击键等待时间后,随机产生所需的输入数据,向s u t 发送信息。 5 事务运行结束输出结果。 6 测试从输入信息发出到事务结果输出之间的时间,即事务响应时间。 7 等待一定的思考时间后,从1 开始重复运行,在等待过程中输出界面不变。 华中科技大学硕士学位论文 测量菜单响应时间 测量事务响应时间 图2 9 事务处理过程图 在盼”一:程中无需人工干预。每个远程模拟终端在事务运行时,将等待时间、 响应时间写入文件,同时记
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025贵州台江县民族中医院第二次招聘备案制专业技术人员考前自测高频考点模拟试题完整答案详解
- 广清市质量安全培训课件
- 2025福建福州市鼓楼区拟任命人民陪审员模拟试卷及答案详解(名师系列)
- 安全培训教师介绍词简短课件
- 2025江苏泰州学院招聘专职辅导员和专任教师17人考前自测高频考点模拟试题及1套参考答案详解
- 2025年第十三届贵州人才博览会省委金融办所属事业单位人才引进1人模拟试卷及答案详解(名师系列)
- 2025年非金属矿物制品:耐火项目建议书
- 2025国网冀北电力有限公司第二批高校毕业生录用人选的模拟试卷及完整答案详解1套
- 2025江苏连云港市金灌投资发展集团有限公司、灌南城市发展集团有限公司等招聘34人模拟试卷及参考答案详解
- 2025湖州安吉县城市建设投资集团有限公司下属子集团招聘11人考前自测高频考点模拟试题含答案详解
- 植物的身体说课课件
- 2024年司法协理员招聘考试题库及答案
- 烧结工艺培训课件
- 公路局应急管理知识培训
- 质量保障方案文案(3篇)
- 1.4理解与感知1812序曲课件-高中音乐湘教版必修音乐鉴赏
- 产科分娩风险管理制度
- 洗车店卫生管理制度
- JG/T 375-2012金属屋面丙烯酸高弹防水涂料
- T/CCOA 62-2023大豆油生产技术规范
- 基础计算机知识常识试题及答案
评论
0/150
提交评论