




已阅读5页,还剩47页未读, 继续免费阅读
(计算机软件与理论专业论文)嵌入式主动实时数据库的查询处理及其优化.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华中科技大学硕士学位论文 摘要 实时数据库( r t d b s ) 的事务和数据具有显式的定时限制,系统的正确性既要满足 逻辑约束又要满足时间约束。在实时数据库中完善集成主动规则机制,用于实时数 据库的反应式行为。r t d b s 的高性能要求以内存数据库( m m d b ) 做底层支持,m m d b 事务在运行过程中没有内外存数据f o 。在上述的基础上,改进传统的查询处理及其 优化机制,是嵌入式主动实时数据库管理系统研究中的重要方面。 以自行研制的嵌入式主动实时数据库管理系统( a r t s e d b ) 为基础,比较深入地 研究与讨论了反映内存数据库特性的查询处理及优化机制的设计与实现。 针对a r t s e d b 的特点,并参照传统的关系数据库的查询处理机制,设计了 a r t s e d b 的查询处理机制的体系结构,该体系结构给出了查询处理的主要模块以 及与其它子系统的接口。 查询处理机制中查询执行是基本。查询执行器的适应能力强弱以及性能的高低, 对a r t s e d b 的整体性能有一定程度的影响。本篇从增强执行器的适应能力和提高 执行性能的考虑出发,综合目前主流的几种执行模式,详细讨论了一种较抽象的查 询执行模型。并结合了多线程技术,进一步发展流水线执行方式,大大提高执行的 效率。 查询优化在提升查询处理性能上至关重要。进行优化器的设计时,需要考虑很 多方面的因素。其中,计划树的代价公式和针对较大计划树搜索空间的搜索策略是 最为关键的。根据内存数据库的特点,详细分析连接树以及代价因素,得出适合 a r t s e d b 的基于指定连接树型的动态编程搜索算法和代价公式。 关键词:实时数据库,主动数据库,查询处理,执行模型,查询优化 华中科技大学硕士学位论文 a b s t r a c t r e a l - t i m ed a t a b a s es y s t e m s ( r t d b s ) n e e dt of a c et h ec h a l l e n g eo f s i m u l t a n e o u s l y s a t i s f y i n gd a t ai n t e g r i t ya n dt i m i n gr e q u i r e m e n t s t h et r a n s a c t i o n sa n dd a t ai nr e a l t i m e d a t a b a s e s y s t e m sc o n t a i ne x p l i c i tt i m ec o n s t r a i n t s ,t h e c o r r e c tc r i t e r i o no ft r a n s a c t i o n e x e c u t i o nm u s ts a t i s f yb o t ht i m i n ga n dl o g i c a lc o n s t r a i n t s a c t i v er u l e s y s t e m s a r e s e a m l e s s l yi n t e g r a t e di n t or e a l t i m ed a t a b a s es y s t e m sf o rt h er e a c t i v em o d e l s t h eh i g h p e r f o r m a n c e o fr t d b sn e e d st h em a i n m e m o r yd a t a b a s es y s t e m ( m m d b ) s s u p p o r t ,a n d m m d bi n s u r e st h a tt h et r a n s a c t i o nh a sn oi oa c c e s si ni t sr u n n i n gt i m e a c c o r d i n gt ot h e a b o v ef e a t u r e s ,i ti sa ni m p o r t a n td o m a i nt oi m p r o v et h et r a d i t i o n a lq u e r yp r o c e s sa n d o p t i m i z a t i o nm e c h a n i s ma n di n t r o d u c ei t i n t oe m b e d d e dr e a l - t i m ed a t a b a s em a n a g e m e n t s y s t e m ( a r t s e d b ) b a s e do i la r t s e d b ,w h i c hi s a l la c t i v er e a l t i m ed a t a b a s es y s t e mw eo u r s e l v e s d e v e l o p e d ,o u rr e s e a r c hd i s c u s sw i t he m p h a s i so n t h ed e s i g na n di m p l e m e n t a t i o no f q u e r y p r o c e s sa n do p t i m i z a t i o n m e c h a n i s m e m b o d y i n g t h em m d b sf e a m r e s w i t h r e s p e c tt ot h ec h a r a c t e r so f a r t s - e d ba n dr e f e r r e dt ot r a d i t i o n a lq u e r yp r o c e s s m e c h a n i s mo f r e l a t i o n a ld a t a b a s es y s t e m t h ea r c h i t e c t u r eo ft h eq u e r yp r o c e s sm e c h a n i s m i na r t s e d ba r ed e s i g n e da n di tc o n t a i n st h em a i nm o d u l e si nq u e r yp r o c e s sa n d i n t e r f a c e st oo t h e rs u b s y s t e m s q u e r y e x e c u t i o ni st h eb a s i so f q u e r yp r o c e s sm e c h a n i s m t h ea d a p t i v ec a p a c i t ya n d e x e c u t i n gp e r f o r m a n c e o fq u e r ye x e c u t i o nw i l lw o r ko nt h ew h o l ep e r f o r m a n c eo f a r t s e d bt os o m ee x t e n t c o n s i d e r i n gt oi m p r o v et h e m ,w ed i s c u s sa na b s t r a c tq u e r y e x e c u t i n gm o d e l b a s e do ns o m ep o p u l a re x e c u t i n gm o d e si nd e t a i l a n dw ea d v a n c et h e p i p e l i n ee x e c u t i n gm o d eb yc o m b i n i n g t h em u l t i t h r e a dt e c h n i q u e ,w h i c hg r e a t l yi m p r o v e t h ee x e c u t i n g p e r f o r m a n c e q u e r yo p t i m i z a t i o ni sv e r yi m p o r t a n tt oi m p r o v e t h ep e r f o r m a n c eo f q u e r yp r o c e s s w en e e dc o n s i d e rm a n yf a c t o r sw h i l ed e s i g n i n gt h eo p t i m i z a t i o nm o d u l e a m o n gt h e m , t h ec o s tf o r m u l ao fp l a nt r e ea n ds e a r c hs t r a t e g yo ns e a r c h i n gs p a c eo fp l a nt r e e s a r e c r u c i a l a c c o r d i n gt ot h em m d b sf e a t u r e s ,t h ej o i n t r e ea n dc o s t l yf a c t o r sa r ea n a l y z e d , a n dt h e nw e g e tt h ed y n a m i cp r o g r a m m i n gs e a r c h i n ga l g o r i t h m b a s e do nt h es p e c i f i e d j o i n i i 华中科技大学硕士学位论文 t r e et y p ea n dt h ec o s tf o r m u l aw h i c ha d a p tt oa r t s - e d b k e y w o r d s :r e a l t i m ed a t a b a s e ,a c t i v ed a t a b a s e ,q u e r yp r o c e s s ,e x e c u t i n g m o d e l , q u e r yo p t i m i z a t i o n 1 1 1 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的 研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个 人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体, 均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名:1 强别红 日期:7 娜l - 年工月f 口日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有 权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和 借阅。本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密口,在年解密后适用本授权书, 本论文属于 不保密口。 ( 请在以上方框内打“4 ”) 学位论文作者签名:t 矧窆 日期:沙自毕年f 月f 口日 指导教师签名: 日期:朋印年厂月i 日 华中科技大学硕士学位论文 1 绪论 1 1 现代数据库应用 自从七十年代关系数据库r d b ( r e l a t i o n a l d a t a b a s e ) 诞生以来,它已在商务和事 务型的应用领域中取得了极大的发展和广泛的应用。随着应用的深入和应用领域的 不断扩大,传统的数据库系统无法适应一些现代的应用,如c i m 、过程控制、合作 处理、网络管理、办公工作流控制、空中交通管制等。这些应用一般都具有实时、 主动等特性( ”。因此自八十年代中期以来,数据库的研究呈现了个“百花齐放”的 局面,其中尤其是时态数据库、实时数据库、主动数据库、内存数据库等现代数据 库理论与技术已成为当今数据库研究领域的重要热点。 我国在传统数据库方面的研究和商业化的产品落后于国外发达国家,而对于嵌 入式主动实时数据库系统的研发,将使得我们掌握具有自主版权的高尖端数据库技 术和产品。因此,对作为十五国防预研重点项目的嵌入式主动实时数据库课题的研 究具有重要的意义。经该课题的研究,我们已开发出一个嵌入式主动实时数据库管 理系统一a r t s i e d b 。 1 2 国内外研究动态 1 - 2 1 实时主动内存数据库研究现状 国内外的研究人员在研究满足实时以及主动等特性的应用的数据库系统时,提 出了诸如实时数据库、主动数据库以及内存数据库等概念,并在这些方面发表了大 量的论文。 实时数据库系统受到了数据库和实时系统两个研究领域里的研究人员的关注。 研究人员在数据和数据库的结构与组织;事务的截止时间的软硬性;事务的优先级 分派、调度和并发控制的协议与算法4 】;i 0 调度、恢复、通信的协议与算法:查 询处理及优化算法;数据和事务特性的语义口】等方面做出了很多开创性的工作。 关于主动数据库( a c t i v ed a t a b a s e ) 的研究,始自2 0 世纪8 0 年代中期,特别进 华中科技大学硕士学位论文 入9 0 年代后,越来越受到人们的普遍关注,已经成为现代数据库研究的重要领域和 热点。ms t o n e b r a k e r 提出使用产生式规则 作为完整性控制、存取控制、 视图处理以及支持结构向前和向后链接的推理豹统一机制f 6 j 。主动数据库管理系统通 过提供构造和有效检索规则与事实的能力,允许异步更新( 不只在推理周期的末尾) 和控制规则的并发与可串行化。 与此同时,内存容量的快速增加而价格的下降以及对系统性能要求较高的应用 也推动了内存数据库的发展。自2 0 世纪8 0 年代早期开始,科学家们就进行将整个 数据库或它的大部分放在内存的研究上。通过将数据库的“主版本”常驻内存可使 系统性能获得很大的改善。时至今日,人们己对它的体系结构、数据组织与存取方 法、事务处理、并发控制、恢复技术7 ,8 1 等方面进行了大量的探讨与研究,取得了丰 富的成果。目前已经有许多试验性的原型系统:如美国s o u t h e r nm e t h o d i s t 大学开发 的m a r s 9 1 ,p r i n c e t o n 大学m a s s i v e m e m o w m a c h i n e 工程中的s y s t e m m i o 等。 现代数据库应用要求数据库具有实时、主动等特性,而内存数据库因其高速存 取等特性,自然作为对这些特性的底层支持。嵌入式主动实时数据库( a r t s - e d b ) 是一个支持主动实时事务的内存数据库系统。此时,内存成为数据库的主要存储介 质,外存的i 0 不再是系统的“瓶颈”,c p u 和内存空间的高效使用成为系统算法 设计目标。针对数据的存储结构和存取方法,产生了许多新的思想和方法。如图论 存取方法【1 1 】。它不但实现了对内存中元组数据的快速访问,而且还大大节省了查询 执行中产生的中间关系所占的内存空间。 1 2 2 查询执行及优化研究王冤状 丛生树模型被用于多元连接( m j ) 查询的优化研究,并有了片段式查询执行计 划12 1 。而并行数据库中实现多流水线h a s h 连接的处理机分配算法,对于执行h a s h 连接的丛生查询树可同时实现流水线内并行( i n t r a p i p e l i n ep a r a l l e l ) e d 流水线间的并 f f ( i n t r a p i p e l i n ep a r a l l e l ) 1 3 1 。 与此同时,查询优化中的搜索策略依然是很重要的。也正是由于它的重要性, 大量的算法被提出来用于数据库系统的查询优化。到目前为止,所提出的这些算法 华中科技大学硕士学位论文 概莫例外的属于下面的三种类型中的一种,或者是这几类基本算法的组合: ( 1 ) 穷尽搜索类。此类算法具有指数级的时间空间复杂度,但可以保证根据优化代价模 型找到最好的计划。这类算法最主要的代表是当前用于许多数据库系统中的动态编 程法【1 5 】。这类算法的其它代表是a + 搜索 1 6 】和转换技术,它们被用于e x o d u s , v o l c a n o 以及其它一些商业产品【1 7 , 1 8 , 1 9 。( 2 ) 启发搜索类。此类算法具有多项式级 的时间空间复杂度。但找到的计划通常没有采用穷尽搜索的好。代表这类的算法有 “最小选中率”算法f 2 叫以及其它贪婪算法。( 3 ) 随机搜索类。此类算法最大的优点 是只需常数级的空间开销,但其运行时间是不好预计的。这类算法中最有名的是2 p o 算法,它是迭代改进和模拟退火算法的综合应用【2 “。 1 3 本文研究的主要内容 本文主要讨论a r t s e d b 系统中的查询处理及其优化的相关算法和处理策略。 本系统的查询处理的流程与传统数据库的流程基本相似。但是由于本系统的实时等 特性,决定了其查询处理在性能评价方面与传统数据库的不同,因此,也就必然造 成了查询优化的标准以及算法的不同。第二章介绍了查询处理基本流程,以及与本 系统其它部件的相互作用。第三章介绍查询处理中查询执行,通过在传统的查询执 行模式中,引入操作系统的多线程技术,缩短查询的响应时间。第四章则介绍查询 优化中的若干技术和算法。第五章给出一些实验数据和图表。最后一章是全文总结。 华中科技大学硕士学位论文 2 嵌入式主动实时数据库系统查询处理概述 查询是用来描述从数据库中检索出来的数据的表达式术语【2 2 】。查询处理是这样 一个过程:它将用户的查询和数据修改命令转变为数据库上的操作序列,并且执行 这些操作。s q l 允许在很高的层次上表达查询,那么查询处理器必须提供关于查询 将被如何执行的大量细节。此外,为避免查询的一个幼稚的执行策略可能导致查询 执行算法所用时间比必需的高出许多倍,查询优化是查询处理中必不可少的一步。 2 ,1 查询处理的基本流程 1 分析查询 分析查询就是进行语法分析。对查询进行词法和语法分析并将之转换成语法分 析树,然后检查关系的使用,检查与解析属性的使用,检查类型等确认语法树的合 法性。对于本系统而言,在这一步还有预处理的过程。即从查询语句中提取与查询 相关的关系及条件表达式,便于在系统进行查询执行之前进行有效的数据装入,以 实现在事务执行期间无1 7 0 操作,达到实时性能要求。 2 逻辑查询计划生成 逻辑查询计划实际上是对应查询语句的关系代数表达式树。这阶段的工作是把 语法分析树转换为适合于系统内部处理的逻辑查询计划。用户提交的数据操纵语句 有四种,分别为s e l e c t 、i n s e r t 、d e l e t e 和u p d a t e 。因此语法树结构中的内 容必然根据操作类型的不同而有所差异。在生成逻辑计划树的时候,自然也会根据 语法树中的内容而有所不同。实际上,这四种语句的关键都在查询上面,具体如下: s e l e c t 。语句本身就作为查询而提出。 i n s e r t 。i n s e r t 一般有两种操作方式。其中一种是一次一行的插入,如: i n s e r tt 1 ( c o l u m n _ 2 ,c o l u m n _ 1 ) v a l u e s ( r o w 样l 1 ) 。这种情况下看似与查询无 关,实际上在内部操作时,还是有一个s e l e c tc o l u m n _ 2 ,c o l u n m _ l f r o mt 1 w h e r ec o l u m n2 = r o w # 1 这样的查询。这是因为在我们系统中,插入新行总要进 行主键唯一性检查。另种情况是一次一集合的插入,如: i n s e r tt ts e l e c t 4 4 华中科技大学硕士学位论文 f r o mt 2w h e r e 这种情况下,首先就要执行后面的查询。当然,这种情况 对于主键的唯一性检查还是要求的。 d e l e t e 。d e l e t e 如果不带w h e r e 子句的话,则是删除所有的行。这相当 于首先执行s e l e c t + f r o mt a b l e ,然后对每一行作删除标记;如果带w h e r e 子 句,则相当于首先执行s e l e c t + f r o m t a b l ew h e r e 。 u p d a t e 。类似子d e l e t e 。 所以,s e l e c t 语句的语法树到逻辑计划树的转换过程,给以被i n s e r t 、 d e l e t e 和u p d a t e 语句所利用。 3 优化处理 按照等价规则重写逻辑查询计划,结合系统中的各项统计信息,以及可能的物 理操作算法,采用某种优化算法,得到等价的但代价很小的查询计划。这种评价, 或者选择,是基于代价的枚举。无论是现在的选取一个逻辑计划还是将要的从一个 逻辑计划构造一个物理计划,查询优化器都是需要估计特定表达式的代价的。 具体实现时采用二次优化方法:1 首先进行连接顺序得优化;2 然后是选择谓词 的优化( 包括用户自定义谓词u d p 以及带子查询的选择谓词) 。 4 物理计划生成以及查询执行 通过逻辑查询计划的每一个操作符选择实现算法,并确定这些操作符的执行顺 序,将逻辑计划转化成物理查询计划。 物理查询计划不仅指明了要执行的操作,也找出了这些操作的执行顺序、执行 部分所用的算法、获得所存储数据的方式以及数据从一个操作传递给另一个操作的 方式。然后,执行物理查询计划,返回正确结果。 图2 1 给出了查询处理的基本功能和流程。 2 2 系统特性及对查询处理之影响 嵌入式主动实时数据库系统具有实时数据库的特征和主动数据库系统的些要 素,以及它的应用环境一嵌入环境的特征和底层支撑数据库系统一内存数据库系统 的特征。它是这些特性的有机综合。 华中科技大学硕士学位论文 = = = ;= = = = = = = = = = = = t = 。;= = = = = = 一: 图2 1查询处理流程示意图 2 2 1 嵌入环境特性 嵌入式系统是以应用为中心、软硬件可裁减的专用计算机系统。它要适应应用 系统在功能、可靠性、成本、体积、功耗等方面的严格要求。嵌入环境包括嵌入式 处理器,相关支撑硬件、嵌入式操作系统等。它在对运行其之上的数据库系统( d b m s ) 提供硬件和操作系统级别上的实时支持的同时,也同时要求d b m s 能够充分运用并 发挥环境所提供的实时特性,更好的满足应用需求。 因此,嵌入环境要求数据库系统具有一定的适应性,可裁减,更重要的是d b m s 本身就具有实时主动特性。 华中科技大学硕士学位论文 2 2 2 实时数据库的特性 实时数据库系统r t d b s ( r e a l t i m e d a t a b a s es y s t e m ) 中事务和数据都可以具有显 式的定时限制,系统的正确性不仅依赖于事务执行的逻辑结果,还依赖于逻辑结果 产生的时间。 实时系统r t s ( r e a l t i m es y s t e m ) 所支持的应用具有很强的时间性要求,其处理 活动与数据都具有定时性。这种数据的定时性或外部环境所施加的响应时间要求导 致了r t s 中任务的定时限制,如期限或截止时间,因而r t s 强调的是定时性,系统 目标是满足各种时间限制。然而传统的实时系统典型地处理具有简单和可预报数据 ( 或资源) 要求的简单任务,不涉及维护共享数据一致性的问题。 传统的并发控制技术和事务处理方法能够保证数据库的内部一致性,而为了保 证数据库的时间一致性,必须采用“识时”( t i m e c o g n i z a n t ) 事务处理技术。在r t d b s 中,事务最重要的特性是定时性,它包含两方面的含义: n 1 定时限制事务的执行具有显式的定时限制,典型地为截止期。事务( 或系 统) 的正确性不仅依赖于其逻辑结果的正确性,还依赖于逻辑结果产生的时间。这 是由于系统需要随时跟踪外部环境而引起的。 ( 2 1 定时正确性事务能按合适的时间要求正确执行。这是由于要求数据对于系 统的各种决策活动随时有效所引起的,它要求权衡定时限制与数据一致性等多方面 因素,提供合适的调度算法。 也就是说,系统的实时特性要求在数据和事务的定义,以及事务的执行期间, 要考虑到定时性,也即时效性。因此,在该事务执行时,即查询处理时,对于响应 时间比传统的数据库系统有着更严格的要求。这就意味着是否优化的评判以及优化 策略的优劣将是一个被重点考虑的问题。另外,对于交互式的查询请求事务,我们 是否也考虑它的实时特性,即允许用户将它升格为实时任务,给予实时的响应。 2 2 - 3 主动数据库对实时数据库的支持 实时应用要求数据库系统必须具有三个重要特性( 功能) : ( 1 ) 确保数据库的状态与被控系统的实际状态一致( 外部一致性) 华中科技大学硕士学位论文 ( 2 ) 能按被控系统所决定的时间限制及时有效地处理数据; 邝) 能对一定的情形进行监视和自动做出反应。 这就意味着支持实时应用的数据库:( 1 ) 是二维的:值与时间。正确而及时的数 据对实时用户才是有用的。( 2 ) 有双重性:被动和主动。同时具有被动与主动双重能 力的数据库对实时应用才是有效的。简言之,支持实时应用的数据库必须提供:正 确性、及时性、主动性,即它应集成实时、主动数据库的功能特性,必须提供主动 机制2 3 1 以监视预定的关于正确性、及时性的限制,自动做出相关反应。上述特性涉 及若干用户对一个共享信息库的存取,并且必须使其保持一致性状态。 一个主动数据库管理系统a d b m s ( a c t i v ed a t a b a s em a n a g e m e n ts y s t e m ) 就是扩 展了下列功能的d b m s : f 1 ) 用户可以显式她定义想要监视的情形( 事件与条件) : ( 2 ) 系统自动探测与评价情形的出现; f 3 ) 旦说明的情形出现,则自动执行相应的活动。 这些功能既可支持外部应用,也可用于实现或扩展d b m s 本身的功能,如完整 性及安全性控制、导出数据、基于规则的推理、以及报警、性能测试等。 主动数据库的功能和特性使得其特别适合于实时应用环境。在实时应用环境中 存在着各种关于数据库状态、状态变迁、定时限制等,并要求系统能评价这些限制 的满足且在限定条件满足时能各自触发某一活动,而这些都不要用户( 应用程序) 的干预。 所以,实时数据库和主动数据库的有机结合 2 4 1 可以有效地支持实时应用,因为 主动数据库提供了存储控制知识的机制,这种控制知识可以说明当特定情形出现时 ( 事件发生且条件满足) 时所必须采取的行动。这种风范正适合于实现通常用来控 制现实世界过程的实时数据库系统。 2 2 4内存数据库对主动实时事务的支持 在主动实时数据库( a r t d b s ) 中,要求系统能较准确地估计事务的执行时间, 但对基于磁盘的数据库系统而言,由于事务要频繁地进行内外存数据交换,磁头的 华中科技大学硕士学位论文 定位时间缓冲区管理和页面缺乏等,事务的平均执行时间和最坏情况的执行时f b j 差距太大。如果将主动实时数据库系统建立在内存数据库的基础之上,那将大大减 少事务运行中的不确定因素,为系统准确估算事务的运行时间使之具有一定的动态 可预报性提供有力的支持,有利于实时事务定时限制的满足。同时事务处理过程中 没有内外存数据i o ,事务执行的时间大大缩短,对事务处理带来一些方便,如并发 控制的粒度可以适当放大,这是因为事务因并发控制造成的相互等待时间短,增大 并发控制粒度可以减少系统开销,提高系统效率。 因此,实时数据库系统往往需要以内存数据库系统( m m d b s ) 来支持其数据存 储管理,其主拷贝或“工作版本”常驻内存。活动事务只与m m d b 的内存拷贝打交 道,当事务提交时,外存版本不一定立即反映事务提交的结果,但应反映到固定存 储器上的日志中。当系统出故障时,应首先恢复内存的“工作版本”。 传统数据库的处理算法一般都是以减少所需磁盘i o 数为目标,而这己经不是 m m d b s 的目标。一些快速算法往往建立大量的中间结果,因而引起m m d b s 的空 间问题。因此一个相关的议题则是开发避免建立大量中间关系的算法问题。另一重 要的方面就是在m m d b s 环境下进行查询优化,这主要有两方面: ( 1 1 事务级优化。确定对于一个事务的“最佳”处理策略。 ( 2 ) 系统级优化。优化d b m s 本身的功能结构,以提高事务的高效处理。 对于m m d b ,事务级优化的目标已不是传统数据库的力争减少所需的磁盘i o 次数,而是快的响应时间和减少临时关系所需内存空间。 2 3 查询处理与其他部件的相互作用 查询处理是任何一种d b m s 的关键部件。它将d b m s 高层的用户界面与底层的 数据存取访问紧密地联系在一起。同时,在查询处理的过程中一往往还涉及到日志 的记录,完整性检查,并发控制等。由于主动数据库具有主动特性,因此在查询处 理的过程中,对某些对象值的修改,比如关系或属性等,都必须将榴关的信息通知 给监视数据库状态的主动机制监视器。 华中科技大学硕士学位论文 2 3 1 用户界面及应用程序 数据库系统一般有两种类型的查询。一种是即席查询。用户通过系统提供的查 询工具( 即用户界面) ,提交查询并等待返回结果集。另一种是预定义事务中的查 询。这种类型的查询一般以嵌入式s q l 的形式出现在用户预先写好的应用程序之中。 不论何种类型的查询,系统都给其所属的事务分配一定的优先级别。当查询提交到 数据库系统时,系统通过事务调度处理模块来确定是否以及何时进行查询处理。 当查询被处理完之后,相关的结果集数据以及操作返回码信息将被登记到该事 务的事务控制块中,以供用户界面程序或应用程序检索。 2 3 2 数据存取 查询处理过程中根据物理查询计划进行查询执行时,需要进行元组数据的访问, 故需要内存数据库管理模块( m m d b m o d u l e ) 提供元组获取的方法。在不同的情况 下,提供给m m d b m o d u l e 的信息的不同,决定着获得元组的方法和性能的不同。例 如,非索引访问与索引访问;单值索引与索引区间等等。 此外,在查询处理过程中,也会有当前工作数据的访问问题。当前的工作数据 是从内存数据库中取到与本次事务相关的用户工作区( l r w a ) 中的,有待进一步处 理,或已经处理却还没有提交到内存数据库中的数据。为这些数据进行内存分配工 作的,是本系统专有的内存管理模块( m m m ) 。就一个事务而言,在该事务中的查 询操作的结果数据在此u w a 中维护。这样此事务中的后续操作可以有效的访问到 此事务中稍前一些操作的结果。当事务结束时,将由m m d b m o d u l e 负责将结果更新 到内存数据库中。 2 3 3 日志、完整性检查及与主动机制通信 在进行除查询以外的其他三种操作( 更新、插入、删除) 之前,都需要日志记 录,由日志登记模块负责记录操作时间、操作对象、操作者以及与事务相关信息的 信息。 完整性检查也是在查询处理过程中数据操作之前进行的。通过对数据库操作的 完整性检查,以确保数据库的正确性与相容性。操作的完整性检查将进行以下的工 华中科技大学硕士学位论文 作: f 1 ) 检查所操作的对象是否存在于数据字典( d d ) 中。 ( 2 ) 检查所操作的对象的值是否符合在d d 中相关的定义,例如类型、范围,精 度等。 ( 3 ) 主键唯一性,以及参照完整性的检查。 主动机制使得d b m s 具有了主动能力,能监视数据库的状态及其变迁,并且能 对外部环境的状态进行监控,当特定情形出现时,及时做出相应的处理,从而有效 的支持实时应用。主动机制中涉及到对许多情况的监视,诸如对象事件,事务事件。 因此在进行查询操作时,还要检索数据字典,获取有关发送对象事件消息的信息, 然后填写操作的对象及其操作时间与新旧值,最后向主动机制模块发送该消息。 图2 2 查询处理的环境结构图 图2 2 比较详细的描绘出查询处理与系统哪些模块有数据交换,以及何种数据被 交换。其中实线表明了与查询处理模块相关的数据流,虚线表明其它模块的些交 互关系。通过图2 2 可以看出,查询处理模块与系统的其它重要模块是紧密联系的, 其作用不可或缺,而且它效率的高低,直接关系到整个系统性能的好坏。 华中科技大学硕士学位论文 2 4 小结 本章从三个方面来对查询处理做了叙述。首先,从查询处理自身的角度出发, 介绍了其基本处理过程及每个步骤的重点考虑。这样可以对查询处理处理什么,以 及处理的流程有一个清晰认识。其次,通过分析系统的特性,进一步说明这些特性 对于查询处理的影响。这对于下一步有关查询处理的研究至关重要。最后,将查询 处理置于系统环境之下,具体考察
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年消防安全教育培训考试题库-隐患排查与消防安全演练试题
- 2025年危险化学品从业人员安全生产技能试题卷
- 2025年大学华文教育专业题库- 小学语文综合素养培养策略研究
- 2025年大学体育教育专业题库- 大学体育教育专业课程知识
- 2025年大学人文教育专业题库- 人文教育的实践研究
- 2025年大学社会体育指导与管理专业题库- 体育风险防范与应急管理
- 2025年大学移民管理专业题库- 移民青年教育与成长路径
- 2025年大学劳动教育专业题库- 大学生劳动教育实践活动设计
- 2025年执业药师药学专业知识考题与解析试卷
- 2025年大学人文教育专业题库- 人文素质培养的学习与实践
- 股权代持协议(模板)8篇
- 《AI创意课件之设计》课件
- 医院会计笔试题目及答案
- 河南豫信电科所属公司招聘笔试题库2025
- GB/T 45345-2025金属及其他无机覆盖层工程用直流磁控溅射银镀层镀层附着力的测量
- 无人机教员聘用协议书
- 药物非临床研究质量管理规范
- 脑科生理病理图谱解读
- 全国青少年科技辅导员专业水平认证笔试考题
- (行业)常用表面处理工艺详解(行业讲座教学培训课件)
- 配电网安健环设施标准
评论
0/150
提交评论