(计算机科学与技术专业论文)面向海量数据库的benchmark研究与实现.pdf_第1页
(计算机科学与技术专业论文)面向海量数据库的benchmark研究与实现.pdf_第2页
(计算机科学与技术专业论文)面向海量数据库的benchmark研究与实现.pdf_第3页
(计算机科学与技术专业论文)面向海量数据库的benchmark研究与实现.pdf_第4页
(计算机科学与技术专业论文)面向海量数据库的benchmark研究与实现.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(计算机科学与技术专业论文)面向海量数据库的benchmark研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国防科学技术人学研究生院学位论文 捅要 随着信息社会的快速发展,大量的数据产生并存储到数据库中,问题的规模导致了海 量数据库的产生。数据库的存储规模已经空前的增长,开发人员面临的首要问题就是如何 保证系统的性能满足用户的性能需求。 系统的性能随着应用领域的不同而有很大的波动,面向特定领域的b e n c h m a r k 是应对 数据库系统应用的多样性的必然产物。面向应用的b e n c h m a r k 能够模拟真实的业务负载, 以评价系统的当前性能;能够通过设计适当的测试用例并且辅以性能分析技术来预测系统 的未来性能;能够通过模拟大规模并发用户重复执行和运行测试,确认性能瓶颈并且优化 和调整应用。因此,建立面向应用的b e n c h a r k 能够有效的解决构建海量数据库的性能问 题。 本文介绍了海量数据库以及工业标准的数据库测试基准一t p c 系列b e n c h i i l a r k 的研究 现状:根据海量数据处理系统的特点,提出了面向海量数据库的b e n c h i n a r k 体系结构:本 文还研究了b e n c h m a r k 的关键技术,包括数据生成技术和查询集生成技术,并且对于如何 使用面向海量数据库系统的b e n c h m a r k 对系统性能进行优化的方法进行了研究:本文对基 于s t a r t p m o n i t o r 的海量数据库进行了性能测试和性能分析,为开发人员和决策人员对系 统性能分析和评估提供了参考依据。 关键字:并行数据库,性能测试,性能分析,b e n c l a r k 国防科学技术人学研究生院学位论文 a b s t r a c t w i 出r a p i dd e v e l o p m e mo fi n f o m a t i o ns o c i e 吼ah u g e 锄o u n to fd a t aw e r cp r o d u c e da n d s t o r e di nd a t 曲a s e t h es i z eo fp m b l e ml e a d st om ee m e r g e n c eo fm a s s i v ed a 诅b 蠲e w i mt h e v o l u m eo fd a t a b a s es t o r a g es c a l i n gm a g n i t u d eo fo r d e r s ,t l l ef i r s tt t l i l l gb u i l d i n gm a s s i v ed a 缸b a s e i sh o wt oa s s u r et h ep e r f o n n a 芏l c eo f s y s t e mt 0m e e tc u s t o m e r sp e r f o r l l l a n c er e q u i r e m e n t s a p p l i c a t i o n - o r i e n t e db e n c h m a r kc a i lm i m i cw o r kl o a do f r e a lw o r l dt 0e v a l 删o n 也es y s t e m s c u r r e n tp e r f o n n a l l c e w i 也a p p r o p r i a t ed c s i g m e n to ft e s tc 够ea n dp e a n c e 觚a l y s i s t e c h n i q u e s ,w ec a np r e d i c tt h ef h t u r ep e r f o r m a n c e0 fs y s t e m t h r o u g hr e p e a t e de x e c u t i o n so f t 1 1 0 u s a n d so fv i r t u a lu s e r s t e s t ,w ec a nl o c a t em ep e r f b n n a i l c eb 砌e i m k ,t h e nt u n ep e r f b m l a n c e s o ,b u i l d i n g 印p l i c a t i o n 一嘶e n t e db e n c h n l a r kc a ne 腩c t i v e l yr c s o l v em ep e r f o m a l l c ep r o b l e mo f b u i l d i n gm a s s i v ed a 诅b a s e t h i sp a p e rf i r s ti n t r o d u c e s 山e s 协t e o f - t h e - a r tm a s s i v e 出【切b a s ea i l dt l l e i n d u s 打y s t a i l d a r d s e r i e so ft p c b e n c i i i l a r k s t h e n ,b 嬲e do nt h ec h a r a c t e r i s t i c so f m a s s i v ed a t ap m c e s ss y s t c m ,w e p r o p o s eam a s s i v ed a 诅b a s eo r i e m e db e n c l l i n a r ka r c h j t e c t u r e t h e n ,w er e s e 盯c h 也ek e y t e c h i l o l o g i e so fh o wt 0i m p l c 地址t h eb e n c 胁a r k t h e n ,w er e s e a r c hh o wt 0t 毗碡s ”t e m p e r f b m a n c e 、v i t hm eb e n c 破 a f c e rt l l a t ,h o wt od e v e l o pb e n c h l n a r kt e s ts u i t e si nt l l ee 础y s t a g eo fs y s t e mw 嬲r e 越c h e d a t l a s t ,、eb e n c l l i n a r k e das p c c i f i cm 船s i v ed a 协b a s eb a s e do n s t 缸r p m o n i t o r t oh e l pd e v e l o p e r 趾dd e c i s i o n m a k e rt oe v a l u a t es y s t e mp e r f b r 玎1 a n c e k e y w o r d s :p a r a l l e ld a t a b a s e ,p e r f o m l a n c et e s t i n g ,p e r f o n n a l l c ea n a l y s i s ,b e n c l l l n a r k i i 国防科学技术人学研究生院学位论文 图1 1 图1 2 图1 3 图1 4 图l ,5 图i 6 图2 1 图2 2 图2 - 3 图3 1 图3 2 图3 3 图3 4 图3 5 图3 6 图3 7 图3 8 图3 9 图3 1 0 图3 1 1 图3 1 2 图3 1 3 图3 1 4 图3 1 5 圈3 1 6 矧4l 图4 2 图4 ,3 三种并行数据库结构 图目录 o r a c l ep a r a l l e ls 肿e r 体系结构3 d b 2u d bp e 系统结构4 t p c c 的商务模型7 t p c c 的数据库模式7 t p c c 工作流8 数据库逻辑模式1 2 数据库的填充过程1 8 d r i v e r s u t 配置方式:单节点模式和c s 模式2 0 数据生成器主要类结构2 3 可比较域模拟数据错开2 5 分布函数定义格式2 6 时间分布和数据长度分布2 7 汉语短文数据生成过程2 8 c s t d g 关于计算节点的加速比2 8 c s t d g 关于数据集规模的扩展性2 9 静态查询语句3 l t p c h 查询模板6 3 2 替换标签定义语法3 4 查询模板t i 3 4 随机替换定义语法3 4 分布替换语法3 5 文本替换语法3 5 s t f t r g e n 工作原理3 7 文本查询模板3 7 海量信息事务处理系统结构图,4 0 加载抽象用例4 2 加载抽象罔例部署图4 2 国防科学技术人学研究生院学位论文 图4 4 查询抽象用例部署图4 3 图45 测试系统配置一4 5 图5 1o r a c l el o g 体系结构一4 7 图5 2o r a c l e 物理空间组织5 0 图5 3 并行开关对索引性能影响5 2 图5 4 劳行度对查询统计响应时间的影响一5 4 图6 1 测试配置一5 8 图6 2 平均查询响应时间变化曲线6 2 图6 3 最大响应时间变化曲线一6 2 国防科学技术人学研究生院学位论文 表目录 表1 1 不同系统性能和性价比5 表2 1c l i e n t 表定义1 2 表2 2d a t a 表定义1 3 表2 3d a t a c e n t e r 定义1 3 表2 4d a 诅字段的分布1 8 表4 1 性能测试参数,4 1 表5 1 数据块大小比较4 9 表5 2 创建文本索引时间5 3 表6 1 数据库规模对照表5 7 表6 2 测试环境配置5 8 表6 t 3数据库规模为3 0 亿条时响应时间5 9 表6 4 数据库规模为6 0 亿条时响应时间6 0 表6 5 数据库规模为9 0 亿条时响应时间6 0 表6 6 查询数据规模为一天的查询响应时间一6 1 表6 7 系统资源使用率,6 1 独创性声明 本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已 经发表和撰写过的研究成果,也不包含为获得国防科学技术大学或其它教育机构的学 位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文 中作了明确的说明并表示谢意。 学位论文题目:亘自连量熬堡庄盟! ! 些地i ! ! 盟塞量塞煎 学位论文作者签名:鱼:! 垫 日期:0 0 5 年肛月日 学位论文版权使用授权书 本人完全了解国防科学技术大学有关保留、使用学位论文的规定。本人授权国 防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电子文档,允 许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据库进行检索, 可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密学位论文在解密后适用本授权书。) 学位论文题目:亘囱连量塾量庄煎坠! ! 堕! ! ! 叠盔墨塞墨 学位论文作者签名 钼小次 日期:。5 年,工月,日 作者指导教师签名:莹! 堡; 日期:z 。心年n 月1 1 日 国防科学技术大学研究生院学位论文 第一章绪论 随着信息科学技术日新月异的发展,各种形式的海量数据如h t m l 文件,文本数据,多 媒体数据等不断的产生,导致数据库规模的急剧膨胀,例如荧国国家专利局的信息数据库 信息量达到2 5t b ( 1 9 8 9 ) “1 ,而雅虎公司的网络搜索引擎数据库的数据规模更达到了2 0 5 亿个在线对象,包括1 9 0 亿的文档和1 5 亿的图像。1 。然而,由于传统数据库系统固有的i o 瓶颈和c p u 瓶颈问题,基于传统大型计算机的数据库系统缺乏支持高性能联机事务分析处 理( o l a p ) 和复杂查询操作的能力,日益加重的负载使其性能达到了极限。 因此设计支持海量数据和满足用户性能要求的数据库系统成为了数据库研究领域历面 临的一项严峻挑战。 j 下如计算机的其他领域一样,并行处理也是海量数据库系统的必由之路。目前,已经 有很多成熟的商用并行数据库系统如o m c l eo p s ,s y b 鹪ei q ,i b md b 2 等,这些并行数据库 系统由于关注的更多的是多用户环境下的并行查询优化,对同一用户的高速加载请求与查 询请求并发的情况考虑不足。因此,采用商用海量并行数据库系统构建此类应用面临着潜 在的性能问题。 本文的应用背景是一个基于商用d b m s 构建的无共享的并行数据库系统,用户的访问 模式为2 4 7 不间断的数据加载和一定规模的并发查询,且最终在线数据规模将达到 l o o t b 级。开发人员在没有类似系统作为参考的情况下,面临的问题是如何在系统设计和 实现时保证系统的响应时间、吞吐率和伸缩性等性能特征。这些特征是决定海量数据应用 能台成功的关键。 系统的性能随着应用领域的不同而有很大的波动。一个具体的系统一般都是针对某些 应用领域而设计的。对于数据库系统而言,其性能很大程度上依赖于应用领域。比如,一 个在o l t p 方面表现出色的数据库系统,在处理复杂查询方面可能性能很差。面向应用的 b e n c h m a r k 是应对数据库系统应用的多样性的必然产物。面向应用的b e n c h i n a r k 能够模拟 真实的业务负载,以评价系统的当前性能;能够通过设计适当的测试用例并且辅以性能分 析技术来预测系统的未来性能:能够通过模拟大规模并发用户重复执行和运行测试,确认 性能瓶颈并且优化和调整应用。因此,建立面向应用的b e n c 腿“能够有效的解决构建海 量数据库的性能问题。 1 1 研究背景 1 1 1 并行数据库研究现状 关系数据模型是并行处理与数据库相结合的关键。在关系数据模型中,数据库是元组 的集合,数据库操作实际是集合操作,很多情况下可以转化为等价的一系列对子集的操作, 而且这些子操作没有数据相关性,因此具有潜在的并行性。并行数据库是并行机上的数据 库,这里的一个数据库操作被分解为若干子操作,交给多个节点同时处理,每个节点是一 国防科学技术人学研究生院学位论文 个独立的系统,因此操作数据可以分散在各个节点上,这样大大的增加了带宽。由此 可见,并行数据库是不同于集中式和分布式数据库的以高性能为主要目的的数据库系统。 1 1 1 1 并行性的度量 理想的并行系统应该具有两个关键特征:( 1 ) 线性加速;( 2 ) 线性放大【5 l 。线性加速 的含义是,使用n 倍多的硬件以1 n 的时间完成同一项任务:线性放大的含义时,用n 倍 多的硬件以同样的时间完成n 倍多的任务。形式化的描述如下: 加速比= 小规模系统上运行时间大规模系统上运行时间 如果系统规模扩大了n 倍,例如节点数增加了n 倍后,加速比等于n ,则称作线性加 速笔。伸缩比是任务在小规模系统上运行时间与扩大n 倍的任务在扩大n 倍的系统上运行 时间之比,即: 伸缩比= 小任务在小系统上运行时间大任务在大系统上运行时间 如果伸缩比等于l ,则称作线性伸缩比。实际上影响接近线性加速比和线性伸缩比的 主要因素有三个: 启动时问:启动并行操作所需要的时间。这是启动所有并行节点进行并行操作所必需 的时间 冲突;当多个节点竞争资源时所必须的等待时间。当访问共享资源时,每个进程都会 对其他进程构成影响,减慢其他进程的执行速度。 负载不均:由于一个任务分成多个子任务并行执行,任务的处理时间应该是最慢的那 个子任务的处理时间。引起这个问题的原因是各并行处理部件的负担的原始数据量或工作 负载严重不均衡。 1 1 1 2 并行数据库体系结构 并行数据库的硬件结构一般分为三类:共享内存( s l a r e d m e m o 吼简称s m ) 、共享磁 盘( s h a r e d d i s k ,简称s d ) 、无共享( s h a r e d - n o t l l i n g ,简称s ,如图1 1 所示。 ( 1 ) 无共享( s h a r e d - n o t h i n g )( 2 ) 共享内存( s h a r e d m e m o 哪( 3 ) 共享磁盘( s h a r c d _ d i s k ) 图1 1 三种并行数据库结构 ( 1 ) 无共享( s n ) :系统中的所有处理机都有自己的私有存储器和磁盘系统,系统中 2 国防科学技术大学研究生院学位论文 没有共享硬件资源; ( 2 ) 共享内存( s m ) :系统中的所有处理机都直接连接到一个全局存储器和共享磁盘 系统; ( 3 ) 共享磁盘( s d ) :系统中的所有处理机都有一个私有存储器,但都直接连接到一 个共享磁盘系统。 s m 和s d 结构的缺点是系统可扩充性不好,系统干扰较大。s d 结构对于数据库的并 发读写操作效率比较低:多个处理器节点需要进行锁争用,以获得对共享数据的修改权。 这一过程牵涉到分布式的锁争用,开销较大。 s n 结构中的共享资源最少,因此相互干扰最小。s n 结构还具有对互联网带宽要求较 低和易于扩充规等优点。因此,很多实验室和商业产品的并行数据库产品都采用了s n 结 构。 1 1 1 3 商用的并行数据库 近十年来,并行数据库的研究成果不断,也研制出了很多实用的并行数据库系统。下 面我们从功能特点的角度简单地分析o r a c l e 公司的0 r a c l e 并行服务器( o p s ) 和m m 的 d b 2 并行数据库。 o r a c l e o p s o r a c l e 在并行数据库的研究领域一直处于领先地位。o r a c l e 很早就捕捉到并行数据库 系统的需求,推出了适用于各种硬件平台的锄c l e 并行服务器( o p s ) ,如图1 2 所示, 0 p s 的特点就是处理查询请求的效率较高。不过由于采用s h a r e d d i s k 结构,可扩展 能力不强,不能满足海量存储的要求。另外,由于我们要求高速加载和查询请求的并行处 理,必然引起资源竞争,造成性能下降,很难同时满足加载的性能需求。 n q 抽1n o d 6 2n0 e 3 1 ;k l n bn * i o i t i q b 日 f 鬻f 鬻慝燎 l0r 孵k 。如 图1 2 o r a c l ep a r a i l e is e r v e r 体系结构 d b 2 u d bp e 并行版d b 2 主要面向无共享结构( s h a r e d - n o t h i n g ) ,硬件平台由多个独立物理结点组 成,每个结点有自己的c p u 、内存和磁盘甚至每个结点可以是s m p 处理机。 实例和用户间存在一一对应关系,一个d b 2 实例有一个协调者结点。与o r a c l e 的 国防科学技术人学研究生院学位论文 o p s 不同的是一个用户的所有请求必须通过该用户的实例的协调者节点,即该协调者节点 成为该用户唯一的请求的入口点,当该用户的多个加载和查询请求到达时,该协调者节点 就会成为系统的瓶颈。所以d b 2 u d bp e 不能很好的满足来自同一用户的多个请求。d b 2 u d bp e 系统的结构图如图1 3 所示。 。 图1 3d b 2 u d b p e 系统结构 1 1 1 4 商用并行数据库系统存在的问题 商业数据库( o r a c l e 、d b 2 、s y b a s e 等) 提供了针对不同系统结构的并行数据库系统。但 在并行数据库系统中,由于采用一个d b m s 集中管理,随着节点数的增加,管理的复杂度 和通讯丌销也呈指数增长。所以节点数也并非可无限扩展。 综上所述,一般的大型商业并行数据库由于关注的更多的是多用户环境下的并行查询 优化,对系统规模或同一用户的高速加载请求与查询请求考虑不足。因此,采用商用数据 库系统构建的海量并行库系统也面临着潜在的性能问题。我们的应用正是一个基于商用 d b m s 构建的无共享的并行数据库系统,且其规模达到了l o o t b 级,如何在测试中对系统 的加速比进行度量和对系统进行性能调优都是我们面临的问题。 1 1 2数据库b e n c h m a r k 研究现状 1 1 2 1b e n c h m a r k 定义 b e n c h m a r k 的定义在不同的领域甚至在相同领域的不同应用中都有不同的阐述。为了 保证较为广泛的应用范围,较为通用的定义口l : b e n c h m a r k 是运行在几个不同的系统上,测量和记录每个系统的性能和造价。性能通 常指i l 向应时i 刈或者吞吐率,而造价指的是系统五年拥有的价钱( f i v e y e a r 4 国防科学技术人学研究生院学位论文 c o s t o f _ o w n e r s l l i p ) 。总而言之,即系统的性价比。 根据b e n c h m a r k 的用途,可以分为通用b e n c h m a r k 和面向领域的b e n c l n l a r k 。 通用b e n c h m a r k 通用b e n c l 埘a r k 通常用来近似的 e 较相似系统的性能。 例如,事务处理b e n c a r k 定义了一个标准的事务处理工作负载和一个性能度量指标 事务数每秒t p s 。这样的一个b c n c h m a r k 可以运行在不同的系统上从而得到如下的表: 表1 1 不同系统性能和性价比 s v s t e m t h r o u g h p u t p r i c e p r i c e p e r f o r i n a l l c e a 1 t p s 1 0 k $ l o k $ 仲s b l o t p s 5 0 k $ 5 k $ a p s c 5 0 t p s 2 m $ 4 0 k $ t p s d 1 0 0 s l m $ l o k $ ,t p s 如果用户的需求小于l t p s ,那么系统a 是最经济的选择;如果用户的需求介于l t p s 到1 0 t p s 之间,则系统b 是最经济的选择。如果需要l o t p s 以上的性能,则系统d 具有最 好的性价比。 一些通用的b e n c l l i n a r k 已经被广泛的接受,很多厂商根据这些b e n c h n l a r k 来宣传自己 产品的性能。比如,h p ,i b m ,o i u c l e 等公司经常宣传自己的产品在t p c c 上的排名的 做法,已经很常见。但是,这些数据并没有绝对的参考意义,正如广告所言:“这些数字 仅供比较。”,因为系统的性能是应用相关的,这也是面向领域的b e n c h m a r k 出现的原因。 尽管有这些缺陷,b e n c h m a r k 和b e n c h m a r k 的概念在评估计算机系统性能和性价比方 面有重要的作用。 面向领域的b e n c a r k 没有单个的性能指标能度量所有计算机应用系统。应用领域的不同导致系统的性能有 很大的变化。为一个特定问题域设计的系统在执行其他任务时可能会有很差的性能。例如, 事务处理软件对于大多数业务应用是不合适的。 在科学计算领域有很多关于数值计算的b e n c h m a r k ,但是这些b e n c h m a r k 对于评价数 据库系统或者事务处理系统并没有什么指导意义,因为数据库系统的性能是由软件算法决 定而不仅仅有硬件决定。即使在数据库系统的应用范围内,对于不同问题域的系统性能也 有很多本质的区别。一个系统在更新操作密集的应用中表现良好,但是可能在处理复杂查 询方面表现的很蹩脚。反之,能很好的处理决策支持查询的系统可能不允许在同样的数据 上进行在线的事务处理。 面向领域的b e n c h m a r k 就是为了解决计算机系统的多样性的问题。每一个面向领域的 b e n c h m a r k 指定了在某个问题域的典型的工作负载。针对这个问题域,就可以评估在这种 工作负载下的不同系统的性能表现。 腼向领域b e n c h m a r k 测试程序必须具备下面四个性质: 国防科学技术人。研究生院。学位论文 客观性( r e l e v a n c e ) ,测量指标能反映应用问题领域的实际特点; 可移植性( p o r t a b i l i t y ) ,在不同的系统、不同体系结构和环境上容易实现; 可扩展性( s c a l a b i l i t y ) ,可以在不同规模和大小的系统上配置: 简单性( s i n l p l i c 时) ,易于理解和掌握,否则缺乏可信度。 1 1 2 2 数据库系统b e n c h 啪r k 标准 在计算机测试领域,早期的测试没有明确的标准。对计算机速度的计算方法不同,使 用的测试指标与方法不同,对测试结果的描述不同,常常导致对于同类产品的测试结果不 具有可比性。而各厂商也把实现对自身产品测试的方法以及系统配置进行保密,测试往往 突出优点、隐藏不足,根本不能真正反映产品本身的性能。在这种情况下,出现了一些测 试程序标准组织。其中最具有代表性的有专门制定事务处理和数据库领域的测试程序标准 的机构t p c ( t r a l l s a c t i o np r o c e s s i n gp e r f o r f i l a l l c ec o u i l c i l ) ,以及制定科学计算和工作站领 域测试程序标准的机构s p e c ( s t a n d a r dp e r f 0 衄a n c ee v a l u a t i o nc o n s o r t i 啪) 等,它们为特 定领域的软件系统制定b e n c h m a r k 测试标准,发挥着十分重要的作用。其中最具代表性的 b e n c h m a r k 测试标准有t p c 系列b e n c h m a r k 。 t p c 制定了针对数据库和事务处理系统的t p cb e n c h a r k 测试系列。包括t p c c 、 t p c h 、t p c w 、t p c r 等多个测试程序标准。其中t p c c 标准描述的应用场景是具有一 定复杂度的在线事务处理( o l t p ) ;t p c h 的应用模型是决策支持系统( d s s ) :t p c r 和t p c h 的应用模型类似,区别在于t p c 。r 可以预先对要进行的查询进行一定的优化; t p c w 描述的应用模型是w e b 事务处理。该系列b e n c h m a r k 的应用模型简单而且具有代 表性,得到了绝大多数数据库厂商的支持,并且以b e n c h m a r k 测试的结果作为评价商业产 品性能的重要指标。该标准被数据库领域广泛认可和使用。 1 1 2 3t p c - c 简介 t p cb e n c h m a r kc ( t p c c ) 【4 】的应用模型是模拟一个具有一定复杂度的在线事务处理 系统的工作负载。其工作负载是典型的o r d e r - e n t r y 操作。其事务既有简单如t p c p j b 中的 d e b i t c r c d i t 的操作,也有复杂的事务,其复杂度是简单事务的2 到5 0 倍。 t p c c 商务模型 t p c c 的问题背景是一个商务模型,该模型描述的是一个供货商经营一定数目的仓 库,每个仓库为十个街区供货,每个街区为3 0 0 0 名顾客提供服务。另外,每个仓库存储 了公司的l o o o o o 种商品用来满足客户订单的需要。该模型如图1 4 所示。 6 国防科了:技术人研究生院学位论文 弋 c u s l o m e r s 图1 4t p c c 的商务模型 t p c c 逻辑数据库 t p c c 的逻辑数据库的实体关系如图1 5 所示: 图1 5t p c c 的数据库模式 注:以上所有数字均是最小t p c c 测试数据库的要求; 框中的数字表示对应的元组数,w 表示w a r e h o u s e 的个数 箭头旁的数据表示两个关系之间的比例关系 “十”表示可以有适当范围的变化 事务模型 n e w - o r d e r :客户建立一个货物订单,在数据库中建立起一个完整的订单。 p a y m e n t :客户支付货物款额,修改客户、街区和仓库的账目和销售额。 d e l i v e r y :商店发货( 批处理事务) ,一次完成十张订单的发货。 o r d e r _ s t a t u s :客户查询自己最新的订单的状态的行为。 s t o c k 1 e v e l :监控货物库存量状态。 t p c cd r i v e r 和工作流 d r i v e r ( e t e m a ld r i v e rs y s t e m ) 是一个t p c c 事务的发生器,它模拟该商务模型中的各 7 国防科学技术火学研究生院学位论文 个街区的终端,以及每个使用这些终端的用户的操作,主要的功能包括: 模拟用户在终端屏幕上数据的输入,并产生相应的事务提交给被测系统 ( s y s t e mu n d e rt e s t 简记为s u t ) 接受s u t 的返回信息,并且在终端上显示 记录事务的响应时间 对d r i v e r 和s u t 之间的多路通讯协议进行转换和管理 进行相关信息统计和计算,给出吞吐率等测试结果 s e i e c tt ) ( nf r o mm e n u : 鲆咖瓷 1n e w 一0 r d e r4 5 2p a v m e n l4 3 3o r d e r - s f a l u s 4 4 d e ij v e r v4 5s t o c k l e v e i4 妙 m e a s u r em e n ur e s p 。n s et i m e | t 八p u ts c r e e n 妙 m e a s u r e 投nr e s p 。n s et i m e o u t p u ts c 他e n o 2 2 7 统计查询 这里的统计查询指的是将2 3 1 2 3 6 查询模板的s e l e c t 子句修改为c o u n t ( + ) 而其他的条 件不变。 2 2 8 数据中心统计查询 功能描述:统计数据中心发送的数据量。 查询模板: d e f i n e t i m e _ v a l u e 2r a n d o m ( m i n d a t e ,m a x _ d a t e ,u n i f o r m ) ; s e l e c td a t a c e n t e r j o ,c o u n t ( + ) f r o md a t a d w h e r edt i m eb e t w e e nt i m ev a l u e a n dt i m ev a i u e + 3 0 国防科学技术人学研究生院学位论文 g r o u pb yd a t a c e n t e rt o 2 3 数据库规模和数据预填充 d a t a 关系元组数目的基数是1 0 亿条,数据库扩展因子( s c a l ef a c t o r ) 必须从如下的值集 中选取:1 ,1 0 ,1 0 0 ,1 0 0 0 ,3 0 0 0 。因此数据库的规模根据扩展因子来决定,比如s f = 1 0 ,那么 数据库的规模为1 0 0 亿条数据规模。而性能度量需要跟数据库的规模关联起来,比较不同 数据规模的数据库的性能是没有意义的。因为关系d a t a 元组的平均大小为1 7 0 字节,当 s f = 1 时,数据库规模约为1 6 0 g b 。 查询性能极度依赖于底层数据集。查询生成器只能揭示它的目标数据集的分布特性, 查询工具必须依赖于能够生成可比较查询的数据集。创建和控制数据集的分布特性是生成 可比较的查询集的前提条件。本b e n c h m a r k 的查询生成器短文本全文检索生成器( s h o r t t e x tf u l lt e x tr e t r i e v a lg e n e ra _ t o r ,下文简称s t f t r g e n ) 依赖的数据生成器是汉语短文本 数生成器( c h i n e s es h o r tt c x td a t ag e n e r a t o r 下文简称c s t d g ) 。s t f t r g e n 和c s t d g 把查询工具和它依赖的数据生成器之间的关系解耦为一系列的外部文本文件,这些文本文 件定义了数据域和数据分布。数据域和数据分布信息被用来生成数据和创建查询集合。这 样就允许修改数据分布而不需要重新编译底层的工具集。 s t f t r g e n 和c s t d g 的数据域定义和分布定义的核心功能是能够定义任意的分布函 数。所有的这些信息都存放在a s c h 文件当中,因此可以在实验过程或者在b e n c h m a r k 调 优的时候进行改动,而不需要修改工具集本身。 人工合成数据生成器具有先天的缺陷。如果数据太过人为假设,比如假设数据完全服 从均匀分布,显然它不能描述真实数据集的某些特性;另一个极端,完全使用采集自真实 环境的真实数据,那么存在的问题是要么数据规模过小,要么对于研究人员或者b e n c l l i i l 酞 程序来讲,没有太多的意义,因为它既不能产生可比较的工作负载结果,也不能扩展到回 答某些感兴趣的假设问题。c s t d g 在两者之间进行了折中。对于某些数据而言,采取常 规的做法,比如每个数据中心发送出来的数据条目,可以认为服从均匀分布,但是每个数 据条目中含有的汉语短文本的长度,则认为它服从某种经验分布。对于某些重要的分布, 数据生成器依赖真实业务环境的数据产生更接近真实的数据。 第一类依赖于真实数据分布的数据列即为数据发送的源地址和目的地址,某些用户发 送大量的数据,而某些用户很少发送数据;某些用户接收很少数据,而某些用户则接收大 量的数据。c s t d g 根据对真实业务系统进行统计,得到数据在用户之间的分布函数。第 二类依赖域真实数据的数据列是时间列,因为每天业务系统产生的数据明显不是均匀分布 的,且对系统查询性能有很大的影响;第三类就是系统的短文本长度的分布。短文本长度 的分布决定了数据库管理系统分词的效率,存储空间的大小,以及创建和维护索引的开销。 综匕,d a t a 字段服从的分布如表2 4 : 1 7 凼防科学技术人学研究生院学位论文 表2 4da _ t a 字段的分布 属性名分布方式 t i m e均匀分布 c l i e r l i _ f r o m经验分布 c l i e n tt o经验分布 d a t a c e n t e r _ f r o m真实数据 d a t a c e n t e r _ 丁。真实数据 c o n t c m经验分布 如图2 2 ,数据库的填充过程如下,首先建立数据库逻辑结构,数据库的数据填充使 用c s t d g 生成数据,然后调用数据库的加载工具进行加载,然后建立索引等辅助数据结 构,最后收集数据库优化信息并对系统参数进行设置。 图2 2 数据库的填充过程 2 4 性能度量和测试规则 数据处理系统一般的性能度量指标有响应时间,吞吐率,性价比等,有的还包括c p u 使用率,内存使用轨迹等。在这里,我们以响应时间作为系统性能度量的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论