




已阅读5页,还剩72页未读, 继续免费阅读
(计算机应用技术专业论文)并行数据处理中间件体系结构的研究和应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
哈尔滨1 = 程大学硕十学位论文 摘要 随着数据库技术及网络技术的发展,信息量越来越庞大,从数据库管理 系统的应用而言,数据量达到t b 乃至p b 级,即使运行在高性能的大型主 机上,在处理大量并发用户及大量数据时,也难以满足应用对c p u 和i o 的性能要求。因此,采用并行技术拓展数据处理应用成为一种迫切的需要。 为了解决海量数据和异构数据的管理和计算问题,人们提出了数据处理中间 件的概念,利用中间件使相关的数据库协同工作,实现互操作。并行数据处 理中间件系统的开发,能够以较小的代价实现数据库并行操作,执行简单、 结构灵活。本课题主要研究并行数据处理中间件系统的体系结构及主要涉及 的工作部件。 本文利用现有p c 机、成熟的网络技术和数据库群集技术,研究了并行 数据处理中间件的层次结构、硬件结构、接口通信技术、功能结构及各功能 所涉及的关键技术。涉及内容包括:基于s n 结构的群集管理系统模型,系 统组件模型,群集工作状态模型;对中间件系统的元数据进行分析,研究并 设计了中间件系统元数据的管理;查询执行控制系统的工作原理及结果综合 过程:提出了采用数据放置和缓存系统提高系统性能的思想,包括数据放置 的主要方法和策略;缓存系统的内容、组织及管理。根据实际应用环境,实 现了并行数据处理中间件系统建立模块和运行模块的功能。对所研究及设计 的系统进行了系统实验和现场测试,根据结果对并行数据处理中间件系统的 性能进行了评价。 目前,该并行数据处理中间件系统,已经在大型应用工程中得到实际应 用。并行数据处理中间件系统的研究和实现,为用户提供了统一的服务接口 和管理平台,提高了系统的性能,增强了系统的可用性和可维护性,保护了 用户的已有投资。 关键词:并行数据处理;中间件;体系结构 哈尔滨丁程大学硕士学位论文 a b t r a c t w i t ht h ed e v e l o p m e n to ft h ei n c r e a s i n gc e n t r a l i z a t i o no fd a t a b a s ea n dt h e n e t w o r kt e c h n o l o g y , t h ei n f o r m a t i o nf l o wi sb e c o m i n gl a r g e ra n dl a r g e r a sf a ra s t h ea p p l i c a t i o n so ft h ed a t am a n a g e m e n ts y s t e m ,w i t ht h ed a t as c a l eg o i n gt ot b o rp bl e v e l ,i ti sh a r dt om e e tt h ed e m a n d sf o rt h ep e r f o r m a n c er e q u i r e m e n ti n t e r m so fc p ua n di o ,e v e ni fal a r g ea m o u n to fu s e r sa n dd a t aa r eo p e r a t e do n l a r g e s c a l em a i nh o s tw i t hh i g hp e r f o r m a n c e t h e r e f o r e ,t h e r ei sa nu r g e n t d e m a n df o rt h ed a t am a n a g e m e n ts y s t e mo fp a r a l l e lt e c h n o l o g yt oe x t e n dd a t a p r o c e s s i n ga p p l i c a t i o n i no r d e rt os o l v et h em a n a g e m e n ta n dc a l c u l a t i o n so ft h e m a s s i v ed a t aa n dh e t e r o g e n e o u sd a t a ,t h ec o n c e p to fd a t ap r o c e s s i n gm i d d l e w a r e , w h i c hc a nb eu s e dt o r e g u l a t et h e d a t a b a s et ow o r kt o g e t h e ra n da c h i e v e i n t e r o p e r a t i o n ,i sp u tf o r w a r d t h es y s t e mo fm i d d l e w a r ei sc h a r a c t e r i z e db y s t r u c t u r a lf l e x i b i l i t y , s i m p l ed e v e l o p m e n ta n dt h er e a l i z i n go fp a r a l l e lo p e r a t i o no f d a t a b a s ew i t hc o m p a r a t i v e l yl o wc o s t t h er e s e a r c hi n t h i st h e s i si sm a i n l y f o c u s e do nt h es y s t e ms t r u c t u r eo fd a t ap r o c e s s i n gm i d d l e w a r ea n dt h em a i n r e l a t i v ec o m p o n e n t s b a s e do nt h e e x i s t i n gp c ,a d v a n c e dn e t w o r kt e c h n o l o g ya n dc l u s t e ro f d a t a b a s e st e c h n o l o g y , t h es t u d yo nt h el a r g e rs t r u c t u r eo ft h em i d d l e w a r es y s t e m , t h es t r u c t u r eo fh a r d w a r e ,t h ei n t e r f a c ec o m m u n i c a t i o n t e c h n o l o g y , t h e a r c h i t e c t u r eo fm i d d l e w a r ea n dt h ek e yt e c h n i q u e sa r ep e r f o r m e d i ti sf o u n d e d t h a ti n c l u d e st h em o d e lo fc l u s t e rs y s t e mb a s e do ns n ,t h es y s t e mm o d u l em o d e l a n dt h er e s o u r c ed i s t r i b u t e s t h ea n a l y s i so nt h er e s o u r c ed a t ao fm i d d l e w a r e s y s t e ma n dt h er e s e a r c ha n dt h ed e s i g no ft h em a n a g e m e n ts y s t e mo ft h ed a t ao f m i d d l e w a r es y s t e ma r ea l s op e r f o r m e d t h ek n o w l e d g eo ft h eb a s i cp r i n c i p l eo f i n q u i r y , c o n d u c ta n dc o n t r o ls y s t e m sa n dt h ec o m p r e h e n s i v ep r o c e s sa r ea l s o a c h i e v e d t h i st h e s i su s e sd a t ap l a c e m e n ta n dc a c h es y s t e mt oi m p r o v es y s t e m p e r f o r m a n c e ,t h ec o n t e n t so ft h ec a c h es y s t e m ,o r g a n i z a t i o na n dm a n a g e m e n t i n 哈尔滨t 稃大学硕十学何论文 一i i i i i 一 t h ea c t u a la p p l i c a t i o ne n v i r o n m e n t ,a c h i e v i n gt h em a i nf u n c t i o nm o d u l e so ft h e p a r a l l e ld a t ap r o c e s s i n g m i d d l e w a r ea n dp r i n c i p l e sa n dw o r ks t e p so ft h e m i d d l e w a r ea r ep r e s e n t e d a c c o r d i n gt ot h er e s u l t s ,t h ep a r a l l e ld a t ap r o c e s s i n g m i d d l e w a r es y s t e mp e r f o r m a n c ew a se v a l u a t e d a tp r e s e n t ,t h i sm i d d l e w a r es y s t e mh a sb e e nu s e di nd a t ap l a c e m e n ts t r a t e g i e s a n ds e m a n t i cc a t h i n ga n dh a sb e e na p p l i e dt os o m el a r g ee n g i n e e r i n gp r o j e c t s 啊1 er e s e a r c ha n di m p l e m e n t a t i o no fd a t ap r o c e s s i n gm i d d l e w a r e ,s h o w st h a tt h i s a p p r o a c hc a np r o v i d eu s e r sw i t hau n i f i e d s e r v i c ei n t e r f a c ea n dm a n a g e m e n t p l a t f o r m ,i m p r o v es y s t e mp e r f o r m a n c ee f f i c i e n t l y , e n h a n c es y s t e ma v a i l a b i l i t y a n dm a i n t a i n a b i l i t y , p r o t e c tt h eu s e r s e x i s t i n gi n v e s t m e n t k e y w o r d s :p a r a l l e ld a t ap r o c e s s i n g ;m i d d l e w a r e ;s y s t e ma r c h i t e c t u r e 哈尔滨工程大学 学位论文原创性声明 本人郑重声明:本论文的所有工作,是在导师的 指导下,由作者本人独立完成的。有关观点、方法、 数据和文献的引用已在文中指出,并与参考文献相对 应。除文中已注明引用的内容外,本论文不包含任何 其他个人或集体已经公开发表的作品成果。对本文的 研究做出重要贡献的个人和集体,均已在文中以明确 方式标明。本人完全意识到本声明的法律结果由本人 承担。 作者( 签字) :叠羔堡 日期:娜8 年f 月乃曰 哈尔滨工程大学硕十学位论文 1 1 课题来源及背景 第1 章绪论 1 1 1 课题来源 近年来,作为高性能计算技术的一个重要应用领域,数据并行处理技术 得到广泛的应用。当前的发展趋势是,将数据库管理系统与并行处理技术结 合,充分利用多处理器结构的优势,提供比相应的大型机系统更高的性能价 格比l l 】。数据库的并行处理集中反映在对事务的并行处理和数据的分布存储 两个方面。事务的并行处理通过利用多处理器并行和单处理器多进程( 线程) 并行,大大提高了数据库系统的处理能力。与此相适应,将数据库在多个磁 盘上分布存储,可以利用多个处理器对磁盘数据进行并行处理,从而解决磁 盘i o 瓶颈【2 i 。 本文研究的高性能并行数据处理中间件系统,来源于科技部科技型中小 企业创新基金重点支持的电子信息领域的基于事务处理逻辑、应用服务、数 据库查询的业务处理中间件( 编号:0 4 c 2 6 2 1 2 3 0 0 4 3 1 ) 。该项目主要内容是 设计开发出一种通用的、商品化的支持数据并行处理的中间件系统。 高性能数据处理中间件系统项目的研究开发,目标就是要提高应用系统 的性能,提供并行处理数据的能力,进而提高计算能力。 1 1 2 课题背景 早期的计算机系统,由于应用要求较低,需要其完成的工作复杂程度也 较低。因此,在一段时间内,应用和技术达到和谐统一。但随着应用的不断 发展,要求计算机解决的问题越来越复杂,需要采用新的技术来解决技术复 杂性的问题,如图1 1 所示o 台尔滨j 二程火学硕上学位论义 图11 计算机1 f 台与应_ l j 复杂程度不断提高的矛盾 随着应用的小断深入发展,应用的复杂程度小断增长,使得原有的汁算 平台难以承受和负担。山此,掀起了汁算平台的革新和发展,h 的就是为提 高计算平台的性能。 从儿卜年的发展来看,计算平台的发展可以分为以r 儿个发展阶段:单 机( 单处理器时代) 时代,超级计算机及s m p ( 对称多处理器) ,嘲格时代 ( 群集网格、企业嘲格、全球网格) 。 其结果正如网12 所看到的,建立了几个大的技术发展阶段,每个阶段 都由于计算技术的革新使得应用适应能力大大提高,- 叮以按照人们的希望解 决更加复杂的问题。 自t m # 鼻棚* 业# t 月艇* 目” * 或目缎* 佣*# 俑* j 帆 圈l2 计算平台的发展 海量数据的广泛应用吐l 是促进高性能计算技术研究的重要方面。随着电 子政务及桐天行业信息系统的不断发展,数据量不断增大。以黑龙汀省地税 为例,黑龙汀省地税在1 9 9 6 年丌展信息化建设时其数据量大约为3 0 m ( 喻 , 哈尔滨t 程大学硕七学位论文 尔滨市1 0 m ,约为黑龙江省数据量的三分之一) 。2 0 0 0 年至今,随着数据大 集中建设的开展,目前( 哈尔滨市) 每年新增数据约在3 5 g ,加上保留7 年 数据大约在5 0 g 左右,黑龙江全省约在1 5 0 g 左右。辽宁地税4 5 0 g 左右, 广东地税1 0 5 0 g ( 按照税收总量估计,辽宁为黑龙江3 倍,广东为黑龙江7 倍) 。 随着数量达到t b 甚至p b 级,即使运行在性能强大的大型主机上,在处 理大量并发用户和大规模数据量时,也已经很难满足i o 和c p u 方面的性能 要求。在这种性能瓶颈的情况下,对海量数据处理的研究就成为一种强烈的 要求。 要解决海量数据的应用问题,除了采用并行计算技术外,尚需要研究新 的技术方法( 如海量数据处理中间件) ,数据存储策略( 高性能缓存技术,如 语义缓冲技术等) ,数据查询策略( 生产、查询机分离体系结构) 等i 射。因此, 高性能计算不仅仅是对群集系统的研究,也包含研究相应的软件技术和方法 以适应应用的不断发展。 1 2 课题研究的目的与意义 近年来,随着并行计算的发展迅速,伴随着数据处理量越来越大,传统 的数据库已经很难满足不断变化的需求,并行计算系统的出现提高了数据库 管理的性能。并行数据库作为一个新的数据库研究领域,随着应用的不断深 化,必将得到广泛的推广和应用。这不仅是大型企业所需要的,也是中小型 企业所渴望的。然而,目前典型的并行数据库系统在功能和价格上都是中小 型企业难以负担的,因此,开发一种性价比较高的并行数据处理系统是市场 对低端高性能数据库产品的期望。 目前,国内不少院校及公司都在进行并行数据库以及相关的支持并行数 据库的中间件系统的研究和开发工作。但是多数部门过于追求通用化,导致 应用方面不成规模,因此中间件系统还有很大的发展空间和探索余地。比较 实用的并行处理结构是基于局域网的p c 集群系统,本文研究并设计了一种并 行数据处理中间件系统,通过它来对由装有数据库管理系统的多台p c 机组成 的数据库集群系统进行管理,在现有的数据库管理系统和网络技术的基础上, 哈尔滨工程大学硕十学伉论文 向用户提供数据库的并行处理能力。本系统可以充分利用企业现有的计算机 资源,在低投资的基础上实现高性能计算。另外,本系统具有投资风险小, 结构灵活,可扩展性强,软件可继承,通用性好等优点,尤其适合于中小型 计算机用户和科研院校,也是符合我国国情需要的。 1 3 国内外研究现状分析 1 3 1 群集系统 群集系统【s 】是共同为客户机提供网络资源的一组计算机系统。在群集系 统中,提供服务的每一台计算机叫做节点。集群系统的节点可以是高档微机、 工作站、小型机、大型机或巨型机。在某一个节点不可用或者不能处理来自 客户的请求时,该客户请求将会转到另外的可用节点来处理。对于客户端来 讲,这些工作都是透明的,客户端不需要了解所使用资源的具体位置,群集 系统将会自动完成这些操作。集群系统一般采用通用的商用器件、操作系统、 并行编程环境以及典型应用软件等。因此,集群系统能够在较低投资的基础 上,通过有效地管理和调度,充分利用系统资源,达到较高的性能价格比。 集群系统一般是多用户、分时共享的系统。集群系统的典型代表有:美国 n a s a 的b e o w u l f , i l l i n o i s 大学的h p v m ,c a l i f o r n i a 大学的n o w ,s u n 公 司的s o l a r i s m c 6 - 9 。 目前典型群集系统具有的特点是【协挖l : ( 1 ) 采用普通p c 工作站、工作站或服务器,通过某种方式连接起来构 成的多机系统。连接方式采取通过网络适配器和网络集线器( 如公司兰光系 统群集系统) ,通过将各个机器的r s 2 3 2 串口直接连接起来,通过内存通道 卡和内存通道集线器方式连接各台机器。 ( 2 ) 群集系统都有良好的可用性。即能够在群集的某些部分资源出现故 障情况下,继续向用户提供连续的服务。几乎所有的群集都具有灾难恢复功 能。 ( 3 ) 典型的群集系统提供了良好的可管理性。管理人员通过简单操作就 可以对群集中的工作节点或控制节点进行配置和管理工作。 ( 4 ) 群集系统具有良好的可扩展性。只需很少的工作就可以方便地向群 4 哈尔滨_ t 程大学硕七学位论文 集中加入或删除工作节点。 ( 5 ) 群集系统一般都提供负载平衡功能。负载平衡包括静态负载平衡和 动态负载平衡,为了最大限度地利用群集中的一切资源,群集需要具有动态 负载平衡功能,通过监视群集中实际节点的负载情况动态地进行调度,并可 以改变调度计划。 11 3 2 并行数据处理技术 数据库技术经历了几十年的发展演变,已经取得了巨大的成就,发展成 了一门内容丰富的学科,形成了总量达数百亿美元的一个软件产业。目前, 市场上具有代表性的数据库产品包括o r a c l e 公司的o r a c l e ,i b m 公司的d b 2 以及s y b a s e 公司的s y b a s e 数据库等等m 1 。从一定程度上看,这些产品反映了 当前数据库技术的最高水平和发展趋势。 并行数据处理技术是数据库的一项核心技术,它使组织能够高效地管理 和访问t b 级的数据。如果不能提供高效的并行数据处理技术,这些大型数 据库( 通常用于数据仓库但也越来越多地出现在业务系统中) 将不会存在。 简而言之,并行数据处理就是利用多个c p u 组成计算机系统,这些处理单元 相互通信和协作,快速、高效的求解复杂问题。 现在的数据库,无论是用于数据仓库、操作数据存储( o d s ) 或o l t p 系 统,都包含丰富的信息。然而,由于其中涉及海量数据,及时查找和展示信 息是一个巨大的挑战。并行数据处理技术能够解决这一挑战。使用并行处理 技术,数分钟内( 而非数小时或数天) 就可以处理数t b 级的数据。并行处 理技术通过利用所有可用的硬件资源取得这样的高性能:多个c p u 、多个i o 通道、多个存储阵列和磁盘驱动器,以及大量的内存。数据库软件越能有效 地利用所有这些资源,处理查询和其它数据库操作就越有效。 并行数据处理的思想就是将单个任务分解为多个更小的单元,不是通过 一个进程完成所有工作,而是将任务并行化使多个进程同时在更小的单元上 运行,这可以极大地提高性能和最佳的利用系统。 国外的并行数据库技术发展得比较早,也比较成熟。典型研究成果有: i b m 公司的d b 2 、o r a c l e 、t e r a d a t e 、t a n d e m 、g u m m a 、b u b b a 等1 1 3 _ 1 5 】。国内 的一些高校、科研院所等研究机构也在积极地进行并行数据库以及支持数据 哈尔滨工程大学硕十学位论文 库并行操作的中间件的研究开发工作,并已经陆续推出了相应的产品和解决 方案,比如中国人民大学研制的p b a s e 原型系统,华中理工大学研制的p a r o 原型系统 1 6 l 。 1 3 3 数据处理中间件 计算机技术迅速发展。从硬件技术看,c p u 速度越来越高,处理能力越 来越强;从软件技术看,应用程序的规模不断扩大,特别是i n t e m e t 及w w w 的出现,使计算机的应用范围更为广阔,许多应用程序需在网络环境的异构 平台上运行。这一切都对新一代的软件开发提出了新的需求。在这种分布异 构环境中,通常存在多种硬件系统平台( 如p c ,- 1 - 作站,小型机等) ,在这些 硬件平台上又存在各种各样的系统软件( 如不同的操作系统、数据库、语言编 译器等) ,以及多种风格各异的用户界面,这些硬件系统平台还可能采用不同 的网络协议和网络体系结构连接,如何把这些系统集成起来并开发新的应用 是一个非常现实而困难的问题。 为解决分布异构问题,人们提出了中间件( m i d d l e w a r e ) 的概念。中间件1 1 7 1 是位于平台( 硬件和操作系统) 和应用之间的通用服务,这些服务具有标准的 程序接口和协议。针对不同的操作系统和硬件平台,它们可以有符合接口和 协议规范的多种实现。 处于操作系统软件与用户应用软件之间的中间件,相当于一个过滤层, 所有的数据进出都要通过这个过滤层。中间件是否可靠,将关系到所有数据 是否安全,而把住中间件这一关,也可能将来自后门的攻击拒之门外。 中间件包括的范围十分广泛,针对不同的应用需求涌现出多种各具特色 的中间件产品。但至今中间件还没有一个比较精确的定义,因此,在不同的 角度或不同的层次上,对中间件的分类也会有所不同。 一般来说,中间件大致可以分为消息中间件、事务处理中间件、应用服 务器、企业级应用集成、安全中间件等。本论文实现的中间件系统以实现数 据并行处理为主要目标,是比较典型的事务处理中间件系统。 事务处理中间件是目前主要的中间件之一,它是一种复杂的中间件产品, 是针对复杂环境下分布式应用的速度和可靠性要求而实现的 i s l 。它给程序员 提供了一个事务处理的应用编程接口,程序员可以使用这个程序接口编写高 6 哈尔滨工程大学硕士学位论文 速而且可靠的分布式应用程序基于事务处理的应用程序。 事务处理中间件系统在过去的1 0 年间发生了很大的变化。根据文献 【1 9 、f 2 0 1 进行归纳得出:首先,浏览器已经成为几乎所有应用的标准客户端, 包含w e b 、中间件服务器和数据库服务器的三层架构成了各种应用的标准支 撑平台。其次,由于这种模式的方便性,使得信息系统的建设更加容易,但 系统的性能以及服务器的构建等方面仍然存在许多需要考虑的问题。第三, 目前,很多应用系统面向的用户是社会大众,用户机数已经是从客户机服务 器时代的几百个,发展到了目前的几万个到几十万个甚至百万个,这一强劲 的发展趋势现在主导着目前大型应用系统的发展。 这种趋势使系统中的主要资源,数据和处理正沿着网络向一些核心集 中,导致了在网络中的某些核心点聚集了应用系统中主要的数据和软件、主 要的计算能力和i o 能力。数据在此,数据访问和数据处理也在此。 并行数据处理中间件系统的研究开发,目标就是要提高应用系统的性 能,提高计算能力。 1 4 课题主要研究内容 本文来源于科技部中小企业创新基金支持的项目,本文的并行数据处理 中间件系统是以海量数据库在决策支持领域的应用为应用背景,运用并行数 据处理理论,研发的数据并行处理中间件产品。为适应目前中间件系统的发 展趋势,满足应用对中间件系统的要求,更好的将中间件系统应用到实际环 境中,本文主要从以下几个方面开展研究和设计工作: ( 1 ) 中间件系统要提供并行数据库系统提供的基本功能和一些主要的管 理功能,中间件系统研究设计中要在健壮性和可用性方面进行充分的考虑, 为形成真正意义上的产品打下坚实的基础。 ( 2 ) 中间件系统要支持流行的数据库系统的并行化,包括对 o r a c l e d b 2 ,s y b a s e ,s q l s e r v e r 的支持,考虑通用中间件对非结构 化数据访问的设计和实现。 ( 3 ) 中间件系统要支持目前流行的多层架构的架构模式,要考虑在多层 架构环境中如何能够真正发挥其原有的性能和能力。 哈尔滨工程大学硕十学位论文 ( 4 ) 中间件系统要考虑支持在大规模事务处理系统中应用缓存技术及减 轻系统压力的技术和手段。 ( 5 ) 中间件系统要考虑提供自主计算能力,通过自主计算能力的应用减 少用户维护系统要付出的代价。 针对以上这些问题,本文的研究主要包括以下几部分内容: ( 1 ) 研究并行数据处理中间件系统的框架。 ( 2 ) 研究中间件系统的硬件结构、系统结构、功能结构。 ( 3 ) 根据中间件系统的功能结构,对中间件系统各模块进行设计。 ( 4 ) 实现中间件系统的主要功能,并进行相关实验与测试。 1 5 论文的组织 本文共分4 章,具体内容为: 第1 章为绪论,介绍了课题的来源及背景,课题的研究目的与意义及国 内外发展情况。 第2 章介绍了并行数据库体系结构,通过对三种结构的分析与对比,确 定无共享结构为本文所采用的结构。然后介绍了并行数据处理中间件系统, 对中间件的功能结构、基于无共享结构的群集系统建立和系统运行进行了阐 述。 第3 章对并行数据处理中间件系统进行设计。首先,文章提出并行数据 处理中间件的三层框架,对并行数据处理中间件系统的总体结构进行设计, 包括硬件结构、系统体系、各层间接口及功能结构。然后对并行数据处理中 间件系统的功能进行设计,包括群集管理系统、系统元数据、查询执行控制、 数据放置及存储系统系统。 第4 章对并行数据处理中间件系统的主要模块进行实现。首先给出了并 行数据处理中间件系统两个主要模块,即建立模块和运行模块的实现。然后 分别对建立模块的群集管理系统、数据字典、通讯模块进行实现;对运行模 块的语法分析、执行控制和客户端进行实现。最后对系统做了实验及应用测 试。 最后总结了本文所做工作,并对下一步的工作进行了展望。 8 哈尔滨工程人学硕士学何论文 第2 章并行数据处理中间件体系结构的研究 并行数据处理中间件系统的设计目标是从数据库管理系统出发,利用现 有的p c 机和局域网,扩充和改进系统功能,通过中间件系统进行统一调度, 将多台p c 机上的局部数据库协同工作,提供数据并行处理功能。本章首先 对并行数据库体系结构进行了介绍,在此基础上研究了并行数据处理中间件 系统的结构特点,并分析了中间件系统的主要功能。 2 1 并行数据库体系结构 现代数据处理的特点是用户多、操作多、数据量大、查询复杂、响应时 间短,传统的数据库管理系统已难以适应不断增长的性能要求,而并行数据 处理系统以其强大的c p u 处理能力和i o 可扩展性,成为数据处理领域应用 及研究的主要方向。以硬件的体系结构为基础,按照处理机、磁盘及硬盘的 相互关系,可以将并行数据库系统划分为三种体系结构1 2 1 1 :共享磁盘( s d : s h a r e d d i s k ) 、共享内存( s m :s h a r e d m e m o r y ) 、无共享( s n :s h a r e d - n o t h i n g ) 。 本章首先对三种结构进行研究分析,对其技术指标进行比较,提出采用s n 结构的依据和基础。 2 1 1s m 体系结构 s m 结构1 1 9 1 1 2 0 1 1 2 2 1 由一个用于共享的存储器、多个磁盘存储器和多个处理机 构成,如图2 1 所示。 l c p uc p uc p u i l网络 l i 共享内存 ii l 磁盘磁盘磁盘 图2 1s m 结构并行计算 s m 结构由高速通信网络连接,c p u 可存储任意一个或几个硬盘( 即所 9 哈尔滨丁程大学硕士学位论文 有磁盘和内存可由所有处理机共享) 的数据。执行一条s q l 语句所涉及的多 个数据库可通过共享内存来交换信息和数据,数据库的数据划分在多个局部 磁盘上,可以由所有的处理机访问。s m 的优势是实现简单、负载均衡。另 外,实现查询间并行性不需要额外的开销,实现查询内并行性也不困难。s m 系统还可以实现基于负载动态分配的任务,很好地实现负载均衡。从国内外 发展看,s m 已应用在i b m 3 7 0 多处理机系统、s e q u e n t 系统等经典的并 行计算机系统中【:,】。 但s m 系统的硬件连接复杂,成本很高。另外,访问共享内存和磁盘会 造成瓶颈,为避免访问冲突导致系统性能下降的情况发生,对节点数目需加 以限制,这一情况使得s m 结构可扩展性差;由于采用共享内存结构,导致内 存错误会影响多个处理机,降低了系统的可用性。 2 1 2s d 体系结构 s d 结构1 1 9 】 2 0 1 2 2 1 由多个磁盘存储器和具有独立主存储器的处理机组成,如 图2 2 所示。 i c p uc p uc p u iii i内存内存内存 iil i 网络 l l 共事磁盘 图2 2s d 结构并行计算 磁盘存储器和处理机由高速通信网络连接,处理机可以读写所有磁盘存 储器的数据。s d 结构的优点在于: ( 1 ) 成本较低。系统可由标准总线连接,因此成本相对s m 低。 ( 2 ) 可扩充性好。由于每个处理机均有足够大的高速缓冲,降低了对共 享磁盘的访问冲突,因此可连接的节点数目大大提高。 ( 3 ) 可用性强。系统中的任意处理机节点不会对其他处理机节点造成影 响,因此提高了系统的可用性。 ( 4 ) 易迁移。磁盘数据不需要重组,因此单处理机的集中系统可以简便 直接的向s d 系统迁移。 1 0 哈尔滨工程大学硕士学位论文 ( 5 ) 负载均衡。系统可以根据各处理机的负载,动态的分配任务,负载 均衡简单。 s d 结构的不足是实现复杂并存在性能问题。原因在于每个处理机虽然可 以访问共享磁盘上的数据库,但是它们没有共享内存,数据需要拷贝到高速 缓冲区中。为避免冲突,s d 结构需要分布式缓冲管理器对处理机并发访问进 行全局控制和管理,并保持数据一致性,但数据一致性又要带来额外的通讯 开销,造成对共享磁盘访问的瓶颈。 2 1 3s n 体系结构 s n 结构【1 9 】【2 0 l 2 2 1 由多个处理节点所构成,各处理节点有各自独立的处理 机、内存和磁盘存储器,处理节点由高速通信网络连接,如图2 3 所示。 i 网络 iii l c p uc p uc p u ill l 内存内存内存 ili i磁盘磁盘磁盘 图2 3s n 结构并行计算 s n 结构的优点在于: ( 1 ) s n 结构通过最小化共享资源来降低由资源竞争带来的系统干扰。 ( 2 ) s n 结构具有较高的可扩展性,可以根据应用的需要方便地增加处 理机个数。 ( 3 ) s n 结构在数据查询处理过程中,需要在通讯网络上传输的数据通 讯量较小。 ( 4 ) s n 结构在复杂数据查询处理和联机事务处理过程中可达到接近线 性的加速比。 s n 结构的缺点是实现复杂,并只能根据数据的物理位置分配任务,难以 实现负载均衡。 2 1 4 三种结构的对比 根据以上对s m 、s d 、s n 三种结构的分析,对性能、可用性、可扩展性 哈尔滨工程大学硕十学位论文 等技术指标进行比较l z j ,结果如表2 1 所示: 表2 1 三种并行体系结构比较 s ms d s n 性能好较好较好 可扩展性差较好好 可用性差较好好 实现技术 简单较复杂复杂 负载均衡较容易 较容易 难 成本高低最低 处理机数数十个数百个数千个 规模中小中小 大 由表2 1 可见,s m 的优点是设计简单、负载均衡,但是扩展性、可用性 不好:s d 的实现复杂,存在潜在瓶颈问题:s n 结构能提供高伸缩性,通过 减少资源共享最小化资源竞争带来的干扰。 当前,并行数据库系统结构一般趋于采用s n 结构,希望在数据库查询 和执行处理方面达到线性加速比和伸缩比f 2 s 】。 脯比= 篙鬟慧黼 p - , 懒岵蓑舞荔訾器 p 2 , 由公式2 1 可知,加速比等于小规模系统运行时间与大规模系统运行时 间之比,当系统规模扩大n 倍时,加速比等于n ,称为线性加速比。 由公式2 2 可知,伸缩比等于小任务在小规模系统上运行时间与大任务 在大系统上运行时间之比,当比值为l 时,称为线性伸缩比。 影响线性加速比和线性伸缩比的因素为启动时间、冲突和负载。s m 、s d 和s n 结构都存在启动时间和负载不均的问题,但是s n 没有共享资源,因此 产生冲突的可能较s m 、s d 要小,且伸缩性好。因此本论文研究采用s n 结 构。 1 2 哈尔滨工程大学硕十学位论文 2 2 并行数据处理中间件系统 2 2 1 中间件功能结构 中间件主要功能是在客户端和数据库之间建立连接机制,通过中间件协 调各部分应用的连接和互操作,其功能如图2 4 所示: 图2 4 中间件功能图 2 2 2 信息服务 信息服务是并行数据处理中间件系统的重要组成部分,用于管理和维护 系统中的元数据,包括集成环境中各种资源、服务和相关主体的描述。信息 服务主要包括: ( 1 ) 静态数据划分 数据库中间件系统依托群集并行计算机,通过中间件系统将各节点上独 立运行的数据库联系起来,充分利用多处理机和多磁盘的并行性获得较高的 处理能力和速度。 数据分布技术是将数据进行划分,并将划分的数据分布到不同的节点上, 以充分利用系统的i o 并行性。一个关系中的元组通常会分布到多个磁盘上。 数据分布要对数据进行划分,并决定直接访问数据操作的方法。 开发中间件的第一步就要对数据进行划分和分布,确定数据划分和划分 后数据分布节点的方法,该步骤直接影响中间件系统中其他操作的性能1 2 6 l 。 本论文采用静态数据划分策略,通过三个步骤完成: 分片:决定划分属性、划分度、划分方法,划分片断在分布阶段被分配 到群集系统的节点上。 分布:将片断分布到不同节点的磁盘上。 重分布( 数据重组) :当发生数据倾斜、负载失衡、系统性能下降等问题 1 3 哈尔滨工程大学硕十学位论文 时,进行数据重新分布以恢复系统的高性能。 ( 2 ) 数据源的基本信息 元数据是关于数据的数据,用于描述数据,提供诸如数据类型、数据长 度及其他与被描述数据相关的特征信息1 2 7 l 。在数据库系统中,元数据是描述、 定位和控制数据库中数据的数据,还包括用于描述和定位数据库系统中进程 实体和环境实体的数据m 】。数据库功能实现需要利用这些信息,因此数据库 系统中,元数据的优劣直接影响数据系统功能的实现和性能的好坏。 在数据库系统中,使用数据字典组织和管理元数据,系统和用户通过数 据字典查询获取元数据。由于并行数据处理中间件系统是基于s n 结构的群 集计算环境、并行数据库理论及中间件多层框架的,因此并行数据处理中间 件的各项功能的实现方式和传统数据库系统有很大的区别。元数据是在特定 环境下,为并行数据处理中间件中各项功能的实现提供全部所需的信息。并 行数据处理中间件的元数据需要支持数据划分、负载均衡及查询优化,以辅 助中间件系统功能实现。 ( 3 ) 系统缓存 并行数据处理系统在执行数据查询时,影响并行系统性能的三个基本开 销为c p u 、磁盘i o 和通讯开销。若数据库层的单个节点不能并行处理上述 三个开销,这单点查询的执行时间为公式2 3 所示: e x e t i m e a v c = c p u a v e + d i s k a v e + n e t a v e( 2 3 ) 当增加处理节点时,伴随速度增加,相应的通信开销也会增加,设增加 开销为c p ,则响应时间r t 对于节点数n 的函数为公式2 _ 4 所示: r x ( n ) = c p u a w + d i 百s k a v e + 一n e t a w + n c p ( 2 4 ) 上、 因此,需要靠减少底层节点的工作负载和网络通信开销缩短系统查询的响应 时间。 采用缓存技术将最近查询过的查询结果以及系统经常查询的数据保存起 来,可以有效的减少用户操作的延迟,减少网络通信开销,减轻数据库服务 器的负载,提高系统性能。缓存技术在中间件系统中的作用是减少网络流量、 减少用户访问延迟、减轻数据库中节点的的负载,提高连接操作的执行效率。 本文的并行数据处理中间件系统采用语义缓存技术作为存储管理的策 1 4 哈尔滨t 程大学硕十学位论文 略。语义缓存技术1 2 ”l j 是一种基于客户查询语句之间的语义相关建立的缓存。 语义缓存由以往查询结果和查询描述构成,缓存命中通过查询语句与缓存中 各缓存项描述的匹配来判断。当系统执行新的查询请求时,如果新查询与以 往查询内容相关,查询则可能与以往缓存中的内容有相交,缓存项描述与新 查询的描述会有重复之处,系统就有从缓存中获得查询结果的可能。 语义缓存的性能依赖于客户发出的查询语句之间的相关程度,因此语义 缓存适用于关联查询访问。 2 2 3 系统运行 并行数据处理中间件系统运行主要指查询执行控制的过程。数据库查询 执行控制包括扫描与语法分析、查询优化、代码生成、查询执行,其过程如 图2 5 所示。 查询的内部表示 查询执行计划 执行查询计划的代码 图2 5 数据库查询执行控制的过程 扫描与语法分析负责对给定的查询进行语法检查,对语义有效性的检查, 对给定查询进行完整性和安全性检查,产生查询的内部表示。查询优化负责 优化查询,确定查询策略。代码生成负责组合数据库管理系统提供的数据操 作算法,形成查询优化执行计划的可执行代码。查询执行负责控制查询计划, 产生查询结果。 并行数据处理中间件系统对查询执行控制与数据库查询执行的方式类 似,但并行数据处理中间件系统不需要做查询的操作规划,这种规划由最底 层的数据库去执行。其所要完成的任务如下: 哈尔滨丁程大学硕十学位论文 ( 1 ) 建立起从应用程序到中间件服务器的通信联接。应用程序向服务 器发送查询,然后接收从服务器收到的结果。 ( 2 ) 中间件系统接收查询任务,并建立一个代理进程( 线程) 处理查 询任务。代理进程有唯一的i d 号。代理进程将保持与客户端的通信消息,并 在结果获得后,将结果返回给相应的应用程序。 ( 3 ) 代理进程调用中间件数据库处理模块进行以下的查询处理: 分析阶段:检查从应用程序( 客户端) 发送过来的查询,核对语法以确 定用户的查询请求是否满足( 中间件) 系统的要求。查询中间层缓冲区的语 句缓冲区,比较是否有相等的,若相等则获得结果,如果能够进行语义缓存, 则还可以进行部分比较。实现编程时,先做完全相等比较,然后完成部分比 较。如果没有则进行语法分析,语法分析器完成对s q l 语句的理解和分析, 编程时要分类实现。如果语法正确,进行查询分解,按照数据库建立时产生 的数据字典元数据获得数据放置信息。 执行控制阶段:执行控制阶段是按照查询分解的结果,将分解的各个查 询交给数据库系统执行,对执行情况进行控制,将获得的结果交给相应的结 果管理部分的过程。设计时可以先不考虑并发控制、一致性等问题,但执行 控制一定会有一致性和完整性的问题,这就需要在实现时给予考虑,免得今 后修改困难。 2 3 群集管理系统的研究 2 3 1 全局资源管理 群集可看作是资源的集合,群集需对集成资源进行有效管理。群集管理 的目标是设计统一的资源管理系统,使用统一的用户界面,一致的命令格式, 动态监控、查询群集及节点的资源状态【,2 - 3 3 1 。其主要任务是采用统一视图,反 映群集节点的资源状态,并根据作业要求,解决资源调度问题、寻找作业和 资源的映射。 ( 1 ) 全局资源管理的目标是给资源提供一致、可靠、普遍的访问。因此 需要获得以下性能1 3 4 】: 高性能:随着资源数目增加,性能也不断增加,计算时间缩短,以实现 1 6 哈尔滨v t 程大学硕士学位论文 高性能,提高系统吞吐量。 易使用t 用户不必接受过多培训即可使用,且简单系统出错率低。 透明性:对异构资源的地理位置和性能进行屏蔽,实现用户对资源的透 明访问。 可扩
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司环保活动方案
- 公司节能推广活动方案
- 2025年行业伦理道德与法律法规考核试题及答案
- 2025年文化产业管理考试试卷及答案
- 2025年文艺策划师职业发展评估考试试题及答案
- 2025年网络营销与电子商务考试试题及答案
- 2025年设施管理工程师职业资格考试试题及答案
- 2025年农业经济与发展考试试卷及答案
- 2025年历史文化遗产保护与传承考试卷及答案
- 2025年计算机网络基本知识考试试题及答案
- 《食品经营许可证》申请书(范本)
- 2024至2030年中国博物馆行业现状调研及未来发展规划分析报告
- 广东省揭阳市2024年小升初语文真题试卷及答案
- 化工过程安全管理导则培训
- 2024年西藏事业单位真题
- 兽医传染病学考试题(含答案)
- 医学微生物学(北华大学)智慧树知到期末考试答案2024年
- MOOC 人工智能导论-西安电子科技大学 中国大学慕课答案
- (正式版)HGT 3217-2024 搪玻璃上展式放料阀
- 人工智能导论单元练习题1及答案
- 金融数据分析智慧树知到期末考试答案2024年
评论
0/150
提交评论