已阅读5页,还剩68页未读, 继续免费阅读
(计算机软件与理论专业论文)基于xml的关系数据库事务历史信息表示.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
! ;0 ,7 。上 。,渗喵,jlj, ad i s s e r t a t i o ni nc o m p u t e rs o f t w a r ea n d t h e o r y r e p r e s e n t a t i o n o ft r a n s a c t i o nh i s t o r yo f r d bb a s e do nx m l b yl i nl i q i n g s u p e r v i s o r :p r o f e s s o rm az o n g m i n n o r t h e a s t e r nu n i v e r s i t y j u n e2 0 0 8 =_ll。i-ii 7nl, - i - p 一一 。 缱 l 冬 独创性声明 本人声明所呈交的学位论文是在导师的指导下完成的。论文中取 得的研究成果除加以标注和致谢的地方外,不包含其他人已经发表或 撰写过的研究成果,也不包括本人为获得其他学位而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示诚挚的谢意。 学位论文作者签名:抖席乡蕾 签字日期:w 彦,6 瑶 学位论文版权使用授权书 本学位论文作者和指导教师完全了解东北大学有关保留、使用学 位论文的规定:即学校有权保留并向国家有关部门或机构送交论文的 复印件和磁盘,允许论文被查阅和借阅。本人同意东北大学可以将学 位论文的全部或部分内容编入有关数据库进行检索、交流。 作者和导师同意网上交流的时间为作者获得学位后: 半年口一年口一年半口 学位论文作者签名:科莉蠢 签字日期 :弘书良迟 两年 i l 文f参j, 产弋 , ,“j- i;r10 舂 j , 东北大学硕士学位论文 摘要 基于x m l 的关系数据库事务历史信息表示 摘要 数据库应用中所需要的往往不只是快照信息,也包括历史信息,时态数据库 的研究因此产生。然而,历时近三十年,时态数据库研究工作出现大量优秀的理 论成果及一些原型系统,却没有任何主流商业数据库的支持。究其原因,是因为 研究中多样而无法统一的时态数据模型往往要改变和扩展业界现有的标准和规 范。 本文研究了利用x m l 文档来实现事务历史的表示的问题,讨论了关系表的 事务历史信息在x m l 文档中的表示方法,给出了记录事务历史信息的中间关系 库h t a b l e s 模型,实现当现有的关系数据库上发生增删改操作时,将事务信息存 入h t a b l e ,并给出h t a b l e 到x m l 表的转换。这种“辅助 的方式来实现关系 库事务历史支持的方法不改变业界标准,很适合当前没有成熟的时态数据库管理 系统的阶段来实现关系库的事务历史支持。另外,时态分组表示法一直是公认的 对数据历史信息的最强的表示法,这里实现的事务历史支持,利用了x m l 文档 的结构化特性,以分组方式表示事务历史,从而大大减少了完全依赖平面 r d b m s 时的非分组表示法,也就避免了非分组表示法在查询时的时态投影、时 态接合、时态聚集的耗时操作。 测试表明,利用x m l 来表示关系库的事务历史信息没有信息丢失,而且, 可以在h t a b l e s 到x m l 转换过程中,灵活组合各个表的历史,得到各个侧面的 数据库表事务历史的x m l 表示。 关键词:时态数据库,x m l ,时态分组模型,事务历史,关系库 东北大学硕士学位论文 摘要 i v 广麓 一 _ | i y l 0 专 东北大学硕士学位论文 a b s t r a c t r e p r e s e n t a t i o no ft r a n s a c t i o nh i s t o r yo fr d b b a s e do nx m l a bs t r a c t d a t a b a s ea p p l i c a t i o n sn e e dn o to n l y s n a p s h o ti n f o r m a t i o n ,b u ta l s oh i s t o r y i n f o r m a t i o n t h u st h e r ec a m et h er e s e a r c ho nt e m p o r a ld a t a b a s e b u t ,a f t e rn e a r l y3 0y e a r s ,d e s p i t eo fm u c hp e r f e c tf r u i ta n ds o m ep r o t o t y p es y s t e m s , t h e r ei sn os u p p o r tf r o ma n ym a i n s t r e a mc o m m e r c i a ld b m s t h es i s t u a t i o nc a nb e a t t r i b u t e d ,a tl e a s tp a r t l y , t ot h ef a c tt h a ta l lt h o s et e m p o r a ld a t am o d e l sc h a n g et h e i n d u s t r ys t a n d a r d s ,a n dc a n n o tb eu n i f i e de i t h e r 删sp a p e re x a m i n st h ep r o b l e m sa b o u tr d b st r a n s a c t i o nh i s t o r y ( 1 hf o rs h o r t ) r e p r e s e n t a t i o nb a s e do nx m i i n t r o d u c e st h eh - t a b l e s ( h i s t o r yt a b l e s ) m o d e lf o rt h i n f o r m a t i o n , s h o w sh o wt op u tt h et hi n f o r m a t i o ni n t oh - t a b l e sa n dt ot r a n s l a t e h t a l b e si n t ox m la sw e l l t h i sm e t h o dn e e d sn oc h a n g et oi n d u s t r ys t a n d a r d s ,i s w e l ls u i t e df o rt h i sp e r i o dw h e nt h e r ei sn ow e l l g r o w t ht d b m s 舢s 0 ,t h i sk i n do f r e s p r e s e n t a t i o nu s e st e m p o r a lg r o u p e dd a t am o d e l ,a n dt h eq u e r i e so ni t n e e d sn o t e m p o r a lj o i n o r t e m p o r a lp r o j e c t i o n ,n o rt e m p o r a la g g r i g a t i o n w h i c hi s t i m e c o n s u m e d e x p e r i m e n ts h o w st h i sx m lr e p r e s e n t a i o nd o e sn o tl o s et hi n f o r m a t i o n ,a n da l s o , c a na f f o r d sc o n v i n e n tc o m b i n a t i o no fa n yt hi n f o r m a t i o no fa n yt a b l e si nr d bt o s h o wa n ya s p e c to fr d bt r a n s a c t i o nh i s t o r y k e yw o r d s :t e m p o r a ld a t a b a s e ,x m l , t e m p o r a lg r o u p e dm o d e l ,t r a n s a c t i o nh i s t o r y , r e l a t i o n a ld a t a b a s e v p。t一 _ _ 广。 q - 盖 一 ? 飞 奄 甏 e , 、 向 东北大学硕士学位论文目录 目录 独创性声明i 摘要i i i a b s t r a c t v 第1 章绪论1 1 1 研究的背景1 1 2 问题的产生1 1 3 问题的解决说明。2 1 4 论文结构2 第2 章相关技术基础5 2 1 时态数据库术语5 2 2 时态数据模型理论6 2 2 1g a d i a 的同时性关系模型和t e m p s q l 查询语言8 2 2 2s n o d g r a s sf j jt q u e l 9 2 2 3t s q l 2 1 0 2 3 时态数据模型的分析比较1 0 2 4x m l 技术基础1 3 2 4 1x m l 的特点。1 3 2 4 2x m l 的一些相关技术1 4 2 4 3x m l 与数据库一些问题的说明。1 5 第3 章事务历史在x m l 文档中表示方法的确定1 7 3 1x m l 中时间表示方法的一些研究成果1 7 3 2 事务历史信息在x m l 文档中的表示方法1 8 3 2 1 将关系列作为x m l 文档元素属性的表示方法1 9 3 2 2 将关系列作为x m l 文档元素的表示方法2 1 3 3 列作为x m l 元素时x q u e r y 对时态查询的表示2 3 3 4 对n o w 语义的支持2 5 ,、毒 东北大学硕士学位论文 目录 3 5 小结2 6 第4 章关系表事务历史的获取及其到x m l 文档的映射2 7 4 1 概述2 7 4 2 历史信息中间库( h - t a b l e s ) 的生成2 8 4 2 1 历史信息中间库的模式与生成规则2 8 4 2 2 事务历史表的生成示例2 9 4 2 3 生成历史信息库( h t a b l e s ) 的相关问题说明3 4 4 3h - t a b l e s 到h d o c u m e n t s 的转换3 5 4 3 1h t a b l e s 与时态分组模型的对应关系3 6 4 3 2h t a b l e s 对应的x m l 文档的生成3 6 4 4 小结3 9 第5 章系统原型的实现。4 1 5 1 原型设计目标及功能4 1 5 1 1 原型设计目标4 1 5 1 2 原型系统功能4 1 5 2 系统设计说明4 2 5 2 1 设计模块4 2 5 2 2 系统模型设计4 3 5 2 3 设计说明4 4 5 3 系统平台及环境说明4 8 5 4 核心实现4 8 5 5 系统测试5 3 结论5 7 参考文献5 9 致谢6 1 葛 ; 霉 东北大学硕士学位论文第1 章绪论 第1 章绪论 1 1 研究的背景 传统的基于关系型理论的数据库模型现在得到了充足的发展【,在各大数据库厂商 的全力推动下,得以日渐成熟。这种数据库技术所反映的现实世界中的数据是“非时态 的,它仅仅能体现现实世界中数据的当前状态,反映对象在某一个时刻的状态,不联系 其过去和未来,是一种快照数据库( s n a p s h o td a t a b a s e ) 。随着时间的推移和d m l 的提 交,新的数据库状态将覆盖旧的数据库状态,旧状态将永远消失,状态的变迁是不可逆 转的。然而在现实的应用程序的开发环境下,业务逻辑涉及的数据不仅是当前有效的数 据,而且也可能是“过去 的数据;日益广泛的数据库应用要求能管理被处理事件的历 史性信息,和系统中元事件的时态信息。被处理事件的历史性信息如:人事、财务、商 业、金融和自然灾害等有关的历史资料,可以从中看出事物发展的本质规律;数据库系 统中元事件的时态信息,如增,删改的时刻和时间区间等,有助于提高数据库系统的可 靠性和效率,因此出现了时态数据库( t d b ) 的研究。 1 2 问题的产生 擎 时态数据库的研究历时二十多年,涌现出了大量的研究成果,这些研究成果涉及时 态术语定义、时态数据模型、时态关系代数、时态查询语言、时态数据库实现等数据库 理论的各个方面,形成了一套比较完备的理论体系,极大的推进了时态数据库的发展, 但t d b 目前研究工作的遗憾是数学模型多、原型实现少;理论研究多、应用研究少; 以模型划分的学术门派多、支持t d b 产品的厂商少1 4 】。最近o r a c l e 实现了n 嬲h b a c k 【1 9 】, 采用了先进的恢复技术允许用户一旦确定有错,将数据库回滚到以前的版本状态。但是, f l a s h b a c k 对时态查询只提供了有限支持。只支持查看最近的更新日志。实际的应用领 域中,时态数据库模型的实现,缺少相应数据库厂商的支持的一个根本原因,是现有的 时态数据库的各种数学模型,往往要改变和扩展业界的技术标准,而且,各种时态数据 模型各有长短,很难统一的状况也是被业界接受的一个阻碍。 从现实的角度来说,在关系数据管理系统r d b m s 上进行时态扩展以构造时态数据 库管理系统t r d b m s ,是使时态数据库尽快投入实际应用的一条比较可行的途径。必 须指出的是,时态数据库技术最终的解决途径还是必须依靠商业的r d b m s 厂家提供全 面的解决方案,才能得到最广泛的应用。因此,在当前的过渡阶段,采用在传统r d b m s pl;重, 东北大学硕士学位论文第1 章绪论 上添加“辅助时态数据库支持 的模式,是一种比较可行的方法。 另外,时态信息表示法分为两大类:时态分组模型和时态非分组模型,时态非分组 模型符合1 n f ,易于用平面关系表来处理,时态数据库研究中大多采用时态非分组的模 型,这存在一个敝端,非分组模型表示在时态查询时的时态算法( 如时态接合、时态投 影、时态聚集) 系统开销大( 第二章有深入一步的讨论) 。时态分组模型一直以来被公 认为是时态信息的最佳表示法,在这种表示下,时态查询代价相对减小,而x m l 文档 的结构化特性使之很适合时态分组表示。 基于以上的分析,利用x m l 来表示关系数据库的历史,利用x q u e r y 对x m l 的查 询来等价对关系数据库历史信息的查询;一方面,它是在关系数据库基础上的一个x m l 辅助,不必修改关系数据库的标准,另一方面,x q u e r y 的查询能够清晰简洁地表达时 态查询且不必修改语法标准。而且,这种方式可以减少相比时态非分组表示时的时态算 法的开销。因此,有效地将关系数据库历史包括有效时间历史和事务历史生成x m l 文档,来利用x m l 文档上的x q u e r y 查询等价平面表上s q l 时态查询成为当下一个有 意义的课题。 1 3 问题的解决说明 现在的主流关系型数据库,为了适应基于w e b 应用的需求,都提供了s q 删l 的支持,按照s o l 的标准规范i s o 也c9 0 7 5 :2 0 0 3 ( 简称为s q l :2 0 0 3 ) 要求,大多加 入了i s o i e c9 0 7 5 - 1 4x m l - r e l a t e ds p e c i f i c a t i o n s x m l ( s q l x m l ) 相关规范的支持实 现,这使得在传统关系型数据库上方便的使用x m l 技术成为了可能、使得将关系数据 库历史发布成x m l 文档成为颇具基础的工作;同时,基于x m l 数据,w 3 c 组织提供 了x q u e r y l 0 及x p a t h 2 0 的标准规范,通过使用标准的x q u e r y ,可以对面向对象结构 层次化的x m l 数据进行查询操作,而且,如后文所述,用x q u e r y 表示时态查询清晰 充分。 本文将深入讨论,探讨如何将数据库历史生成x m l 文档,并最终以实现的示例系 统演示和性能测试。 1 4 论文结构 本文研究了利用x m l 文档来实现事务历史的表示的问题,讨论了关系表的事务历 史信息在x m l 文档中的表示方法,给出了记录事务历史信息的中间关系库h t a b l e s 模 咤 ,之 啼|,l枣 东北大学硕士学位论文第1 章绪论 型,实现当现有的关系数据库上发生增删改操作时,将事务信息存入h t a b l e 的方法。 并给出h t a b l e 到x m l 表的转换。 本文在第一章介绍部分就研究的相关背景作以说明,并简要的阐述由此而面临的问 题,提出解决问题的思路以及解决的方向,并在以后的章节中做以分析与实现。第二章 主要介绍一些时态数据库的相关知识和过去时态数据库的理论研究成果及实现时态数 据库面临的问题。第三章介绍数据库历史信息的x m l 表示形式,包括有效时间和事务 时间的历史信息,也涉及了x o u e r y 相关查询,并对时态分组x m l 数据模型的一些细 节进行说明。第四章讲述从传统关系型数据库中获取事务历史信息并转换成x m l 表示 第五章对原型系统的目标、实现平台、系统模型等加以介绍,并给出测试分析。 东北大学硕士学位论文 第1 章绪论 谚 , 1 f j ,。 i j , 东北大学硕士学位论文第2 章相关技术基础 。 ,j o -! 一 第2 章相关技术基础 为了实现对关系数据库事务历史信息的支持,本文中将会用到时态数据库技术研究 中的一些成果,包括一些时态数据库领域研究中出现的概念和对时态数据模型的研究。 2 1 时态数据库术语 事务时间( t r a n s a c t i o n t i m e ) :是指一个对象录入数据库系统的时间,有时候也称为系 统时间( s y s t e m t i m e ) 。在时态数据库中的事务不同于传统数据中数据完整性控制时所说的 事务,后文中不再特别说明。 有效时f 司( v a l i d t i m e ) :是指一个对象在现实的世界中发生并保持的时间,或者该对象 在现实世界中为真的时间段。 用户定义的时间( u s e rd e f i n e dt i m e ) :是指用户根据需要而输入的时间,数据库管理系 统将它与数据库中其他一般数据等同对待。 时间粒度( t i m eg r a n u l e ) :数据库中所采用的时间单位称为时间粒度。比如,秒、分、 小时、天等等。 时亥u ( i n s t a n t ) :时间轴上的一个时间点称为时刻。 时间区间( t i m ep e r i o d ) :两个时刻之间的时间称为时间区间。在以时间粒度标识时间 域的系统中,时间区间就是连续时间粒度值的集合。 时间间隔( t i m ei n t e r v a l ) :时间的长度称为时间间隔。对于时间间隔,它有确切的长 度,却没有确切的起始时间和结束时间,这也是它与时间区间的区别所在。 事务数据库,也叫回滚数据库。 数据库本身被增删改的时间称为事务时f 司( t r a n s a c t i o nt i m e ) 。快照数据库不能保留 数据库以前的状态。一个解决的方法就是存储过去所有快照数据库变化的状态,并通过 时间来索引。这里的时间采用事务时间来表示。在这种方式下,事务时间作为第三轴, 这种关系可以视为由事务时间索引的若干个快照关系( 称为快照状态) 的系列。人们可以 通过沿着时间轴移动,并选择某一快照状态来取得过去某个时间的关系快照( 快照状态) 或者对一个关系快照进行查询。选择快照状态的操作称为回滚,支持这种操作的数据库 东北大学硕士学位论文 第2 章相关技术基础 称为回滚数据库。对回滚数据库的修改只能是对最近的快照状态来进行。假定有一个时 间t ,t 位于回滚数据库中己存在的两个事务时间t 1 和t 2 之间,回滚t 的意思就是选择 在t l 时有效的最近的快照状态( 即t l 时的快照) 。 历史数据库。被管理对象的生命周期称为有效时间( v l i l i dt i m e ) ,历史数据库和事务 数据库类似,只是用有效时间代替了事务时间,代之以静态状态序列,用每个关系记录 一个历史的状态。 历史的关系也是一个三维结构,由元组,属性和有效时间构成。 相比事务数据库针对数据库的以前的状态,历史数据库关心的是对象的以前的 状态。 , 双时态数据库,既能管理对象历史,又能管理数据库本身的历史。他具有前两者的 优点,支持事务时间和有效时间。时态关系是一个四维结构,由元组,属性,事务时间 和有效时间构成。 本文将讨论的是事务时间历史的表示,也就是数据库增删改操作的历史信息的表 示。在有了历史信息的x m l 表示之后,利用x q u e r y 的查询来获取任一天( 设定时间粒 度为一天) 的数据库状态,可以实现回滚的功能。 2 2 时态数据模型理论 最初,企业及机关管理历史性数据的方法是把多个快照( 即在不同时刻保存的数据 库的备份) 放在一起,构成了历史。在这类的系统中,存在着以下典型的时态信息管理 问题: ( 1 ) 取多大的时间间隔保存快照? 如果间隔太大,则不足以保证数据的准确详实,如 果间隔太小,则数据冗余多,占存贮空间大。 ( 2 ) 传统关系数据库中,一个表的多个快照,不能简单地同时装入内存,不能简单地 使用传统的选择、投影、连接运算进行操作和查询。因为同一元组同一属性下的值在不 同快照中可能不同,必须作较复杂的、非通用的编程。 ( 3 ) 传统数据库中,对数据库本身历史的维护支持不足,一般只有供恢复回退用的事 务日志( t r a n s a c t i o nl o g ) ,缺乏相应的事务查询命令。 8 0 年代中期,学术界提出的近百种为数据库管理系统增加时态信息处理能力的方 案,经过十多年的竞争性研究,逐渐归并为十三种具有代表性的模型。这1 3 种模型中, 6 ? , , 曩:j ! ! ,j ,沁羔声 东北大学硕士学位论文 第2 章相关技术基础 大部分只支持有效时间,有小部分既衷持有效时间又支持事务时间,并且每种模型基本 上都有自己对应的查询语言。下面列出这1 3 种模型、其代表性人物以及模型的提出时 间: ( 1 ) t r m ( t i m er e l a t i o n a lm o d e l ) ,b e nz v i ,1 9 8 2 ( 2 ) h r d m ( h i s t o r i c a lr e l a t i o n a ld a t am o d e l ) , j c l i l i o r d ,1 9 8 2 o ) o h m ( o b j e c th i s t o r ym o d e l ) ,s g i n s b u r g , t a n a k ,唐常杰等,1 9 8 3 ( 4 ) t e m p s o l , s h a r s h i i c g a d i a & s u n i l ,s n a l r ,1 9 8 5 ( 5 ) t e e r ( t e m p o r a lq u e r yl a n g u a g ef o re n h a n c e de n t i t yr e l a t i o n s h i pm o d e l ) , r e l m a s r i ,1 9 8 5 ( 6 ) t q u e l ,r s n o d g r a s s ,1 9 8 5 ( 7 ) h s q l ( h i s t o r i c a lq u e r yl a n g u a g e ) ,n l s a r d a 1 9 8 7 ( 8 ) i x r m ( i n t e r v a l e x t e n d e dr e l a t i o n a lm o d e l ) ,n i k o sa l o r e n t z o s ,1 9 8 7 ; ( 9 ) t e r m ( t e m p o r a le x t e n s i o n st ot h er e l a t i o n a lm o d e l ) k b n a v a t h e ,1 9 8 7 ( 1 0 ) t d m ( t e m p o r a ld a t am o d e lb a s e do nt i m es e q u e n c e ) , a r i es e g e v & a r i e s h o s h a m 1 9 8 8 爹 参 ( 1 1 ) o o d a p l e x ( o b j e 斌o r i e n t e da p l e x ) ,u d a y a l ,1 9 8 9 ( 1 2 ) t e m p o r a ld e d u c t i v ed a t a b a s e ,m a r i a n n eb a n d i n e t 等,1 9 8 9 嚷 ( 1 3 ) t r c ( t e m p o r a lr e l a t i o nc a l c u l u s ) , a b d u l l a ht a n s e l ,1 9 9 2 管理时态信息的共同目的决定了这1 3 种t d b 模型在概念、研究方法和机制上有一 些共同的特点阳3 ( 1 ) 扩展关系数据库t d b 模型一般是传统关系数据库的扩展,而传统关系数据库则 是它的特例。当生命周期 t l ,t 2 缩小为个时刻 n o w 时,它是被管理对象的令快照, 即传统关系数据库。传统关系数据库的操作如选择、投影、连接都在这里有相应的扩展, 而当生命周期缩为 n o w ,n o w 时,这些运算与传统关系数据库运算兼容。t d b 中增加了一 些传统关系数据库没有,却对时态数据库有意义的运算,如时态连接、时态选择、a f l e r 、 b e f o r e 和o v e r l a p 等等;并且引出了很多命题和定理。 ( 2 ) 形式化的描述 t d b 模型一般都有形式化的描述,定义时刻、时间区间、时态元组、时态关系等一 大批概念,引入或扩展传统关系数据库的运算,例如时态选择时态投影时态连接等 等。在模型和概念基础上深入下去,取得了一批有意义的结果。例如某些性质在关系数 东北大学硕士学位论文第2 章相关技术基础 据库上成立,在时态数据库上也成立;某些性质在关系数据库上成立在时态数据库上 加条件才成立,等等。上述1 3 个t d b 模型从不同的需求、观点出发,各自独立地建立 了一套术语、概念、数学模型,并形成了各自独立的理论体系。下面,在这些模型当中 选取两个比较有特色的模型进行一下简要的分析。 2 2 1g a dia 的同时性关系模型和t e m p s o l 查询语言 s h a r s h ik g a d i a 于1 9 8 6 年建立了同时性关系模型( h o m o g e n e o u sr e l a t i o n a l m o d e l ) , 它基于一种属性值时间签的方式来表示时态信息,它是一种非第一范式的方法,将一个 对象的所有信息集中到一个元组中表示。假设一个双时态关系r 有如下属性a 1 , a n ;t ,其中t 是定义在时态元素域上的时态签属性,那么双时态关系r 可以用下面的 属性值时态签关系来表示: r = ( ( 【t s ,r e l x v s ,v e a 1 ) , ( i t s ,t e l x v s ,v c 】a n ) ) 前面的关系可表示成如下方式: e m p 5 ,9 1 0 ,1 5 j a k e 1 0 ,1 4 5 ,2 0 j a k e 1 5 ,1 9 1 1 1 0 ,1 5 j a k e 2 0 ,u c 1 0 ,1 5 j a k e d e p t 5 ,9 1 0 ,1 5 s h i p 1 0 ,1 4 5 ,2 0 s h i p 1 5 ,1 9 1 0 ,1 5 s h i p 2 0 ,u c 1 0 ,1 5 l o a d 2 0 ,u c 2 5 ,3 0 k a t e 2 0 ,u c 2 5 ,3 0 s h i p 这种模型的关系可以以不同的属性分类来重构。上面的关系显示某个员工所工作过 的所有部门,若从部门的角度分类来重构这个关系,则可以显示某个部门所有的员工 e m p 【5 ,9 l x 1 0 ,1 5 】j a k e 【1 0 ,1 4 1 x 5 ,2 qj a k e 【1 5 ,1 9 x 1 0 ,1 5 】j a k e 【2 0 ,u c x 2 5 ,3 0 】k a t e d e p t 【5 , 9 x 1 0 ,1 5 】s h i p 【l o , 1 4 1 x 1 5 ,2 0 】s h i p 1 1 5 ,1 9 1 x 1 0 ,1 5 】s h i p 2 0 ,u c 2 5 ,3 0 s h i p 东北大学硕士学位论文第2 章相关技术基础 1 了i 丽一 :一一 艇 【2 0 ,u c x 1 0 ,1 5 】j a k e【2 0 ,u c 】【1 0 ,1 5 】l o a d 在上面的表示的基础上,g a d i a 给出了t e m p s q l 查询语言,它兼容了s q l 的主要 功能,能查询被管理对象的历史、数据库本身插删改的历史,以及用户和数据库本身出 错的历史。它要求一个元组中各个属性的生命周期一致,即满足同时性条件。 t e m p s q l 是在s q l 语言框架上加上了时态语义的产物。其基本句为 s e l e c t 属性1 ,属性2 , w h i l e 区间集i l f r o m 关系1 ,关系2 , w h e r e 布尔表达式 其结果等于中间结果集合在区间集l i 上的限制。这里中间结果集合是指在上语句去 掉w h i l e 子句后的查询结果。 2 2 2s n o d g r a s s 的t 0 u ei s n o d g r a s s 的采用元组时间签方式表示时态信息,符合1 n f 的关系模型,给实现带 来方便。假设一个双时态关系r 有属性a 1 ,。a n ;t 这里t 是时态元素域上的时间签属 性,那么r 可以用下面这样的关系来表示妻 t 、 r = ( a 1 9 e e e e a n ,t s ,t e ,v s ,v e ) 附加的属性t s ,t e ,v s ,v c 是原子值的时间签属性,分别包含事务时间和有效时间的 起止时间子。上述的数据可以如下描述: 该模型建立了完备、复杂的理论,t q u e l 建立在这种双时态数据库模型上,支持有 垤 岱 加 岱 蝤 诋 加 5 m 加 笱 n 9 m 侈 比 b 5 m 坫 加 加 脚嘶跚脚 嘶 脚 珧 东北大学硕士学位论文第2 章相关技术基础 效时间和事务时间,具有详细的句法规范,考虑了时态闭包、完全性、有效时间的不确 定性、时态查询优化、时态约束及其和元组演算的语义关系,有丰富的时态语义、灵活 的句法和严格的理论。 下面是一个t q u e l 语句 r e t r i e v e 玎d a 1 1 ) w h e r e ( d e m p - - “j a k e ) a so t f l l 2 p md e c 3 0 ,1 9 9 7 i a so f 关健字,是使时间回退到历史上指定时刻。 2 2 3t s o l 2 前述的时态数据模型可以说是考虑了查询语言、查询语言所处理的对象、更新对象 的更新语言以及指定对象完整性约束的机制所有这些因素;同时关注数据的表示、数据 的存贮和相关的结构需求、以及查询的效率是造成时态数据模型如此多样化不能统一的 原因,1 9 9 3 年,由r i c h a r d 工s n o d g r a s s ,j a m e sc l i f f o r d , c h r i s t i a ns j e n s e n 等专家组成 的b q l 2 委员会试图给出一种可以将各种数据模型统一起来的概念模型- - b c d m ,并 于1 9 9 4 年给出了时态查询语言标准t s q l 2 的初步规范,后参考a c ms i g m o d 反应修 改确定。 b c d m 只考虑时态语义的表示,而表达、存贮或查询的优化时,可以将其映射成 、 各种表达模型。1 r s q l 2 标准自1 9 9 4 年推出以来,有象t i m e d b 这样的时态数据库支持 该标准,目前尚没有商业数据库支持。 2 3 时态数据模型的分析比较 c l i f f o r de ta 1 1 2 】将关系数据库上的时态数据模型分为两大主要类型:时态分组和时 态非分组。 时态非分组模型符合1 n f ,是元组时间签的方法,每个元组时态元素应用于每个 元组,保留了关系模型的简易性,这使得时态非分组模型很适合用过去的关系型数据库 来存放。当元组中与时态有关的任一个属性值发生变化时,就会出现一个新的元组。在 表示元组中对象的所有信息方面,时态分组模型也即属性时间签有不可替代的优点。 式 东北大学硕士学位论文第2 章相关技术基础 表2 1 职员历史信息的时态非分组模型表示 、 t :、,。 t a b l e 2 1n o n g r o u p e dr e p r e s e n t a t i o nf o re m p l o y e e sh i s t o r yi n f o 表2 2职员表的时态分组模型表示 t a b l e 2 2g r o u p e dr e p r e s e n t a t i o nf o re m p l o y e e sh i s t o r yi n f o n a m et i t l e s a l a r yd e p t 1 9 9 5 - 0 1 - 0 1 1 9 9 5 0 1 0 1 1 9 9 5 0 1 - 0 11 9 9 5 - 0 1 0 1 a s s i s t a n gp r o v o s t 6 5 0 0 0 , b o b1 9 9 9 1 2 3 11 9 9 7 1 2 3 1 2 0 0 0 0 1 0 1 1 9 9 8 0 1 0 1 p r o v o s tr d 2 0 0 0 1 2 3 17 0 0 0 0 2 0 0 1 0 1 0 1 墓 n o w n o wn o wn o wn o w 时态分组模型是面向历史的【1 2 1 ,它更具历史表现力。从表中可以看出,时态非分组 模型有两个缺点,首先是冗余,在不同的元组中,字段值几处相同;另外,也是重要的 一方面,在进行时态查询的时候,非分组的模型常常需要时态投影、聚集或连接。每次 查询要花费额外的代价。 以时态接合为例,如果要列出职员的薪金历史,针对表2 - 1 所示的表,一种方法是 利用临时表进行如下的回圈接合操作: s e l e c ts a l a r y , s t a r t ,s t o pi n t ot e m pf r o me m p l o y e e ; u p d a t et c m p s e ts t o p = ( s e l e c tm a x ( t 2 s t o p ) f r o m t e m pa s t 2 1 1 东北大学硕士学位论文 第2 章相关技术基础 w h e r e t 1 s a l a r y = t 2 s a l a r ya n dt 1 s t a r t t 2 s t a r t a n d d a t e d i f f ( d a y , t 1 s t o p ,t 2 s t a r t ) = la n dt 1 s t o p t 2 s t o p ) f r o m t e m p t l w h e r e e x i s t s ( s e l e c t f r o mt e m pa st 2 w h e r e t 1 s a l a r y = t 2 s a l a r ya n d t 1 s t a r t t 2 s t a r t a n d d a t e d i f f ( d a y , t 1 s t o p ,t 2 s t a r t ) = la n dt 1 s t o p t 2 s t a r ta n dt 1 s t o p = t 2 s t a r ta n d t 1 s t o p t 2 s t l ) p ) ) ) ; 支持t s q l 2 的t i m e d b 2 1 l 采用分层结构,把时态查询转换到r d b m s ,其中的时态 数据被表示成带有时间间隔的数据元组,也是非分组。在这样的时态数据库中使用 t s q l 2 ,这种操作看起来很简洁: s e l e c ts a l a r y f r o m e m p l o y e e ; 但是,后台的支持不象表面上这样简单,这种状况会持续到到关系数据库支持s q l 3 标准,具备面向对象的特征,允许表字段为另一个关系表,从而使得关系数据库可以保 存时态分组的数据。由于关系表的平面结构的限制,前面2 2 节中所述的时态数据模型 多属于时态非分组。 时态数据库在实现过程中的有诸多困难,其中之一与时态数据模型相关,由于关系 数据库的平面结构,限制了所采用的时态数据模型为非分组的数据模型,这导致了在实 际应用的时态查询中,选择、投影和连接运算占了大量资源。对时态选择、时态投影和时 态连接的优化成了t d b 查询优化的技术焦点。 基于前面的分析比较,在事务历史信息用x m l 文档表示时采用时态分组模型,这 东北大学硕士学位论文第2 章相关技术基础 样可以避免查询时进行耗时的时态选择投影连接操侮而且,由于x m l 文档结构化特 征,非常合适采用时态分组表示法,在第三章会详细讨论表示形式。在这种情况下,时 态查找可以在分组的数据上进行,而不是象在平面表的非分组表示上那样每次查找都要 进行时态投影、聚集或连接。 2 4x m l 技术基础 2 4 1x m l 的特点 x m l 指可扩展标记语言( e x t e n s i b l em a r k u pl a n g u a g e ) ,于1 9 9 8 年2 月1 0 日被确 立为w 3 c 标准田l 。x m l 基于s g m 卜标准通用标记语言( s t a n d a r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年保定市选调公务员考试真题汇编及答案解析(夺冠)
- 2025安徽合肥市清樾幼儿园教职工招聘备考题库带答案解析
- 2023年内蒙古自治区直属机关遴选公务员考试真题汇编及答案解析(夺冠)
- 2023年新乡市直遴选笔试真题汇编带答案解析
- 2023年临沧市直机关遴选公务员考试真题汇编带答案解析
- 2025年梁平县直属机关遴选公务员笔试真题汇编附答案解析
- 客服经理面试常见问题及客户服务技巧
- 凝胶修复材料在神经再生中的研究-洞察及研究
- 公共设施管理中的法律服务与政策创新-第1篇-洞察及研究
- 2025年新型环保交通工具研发项目可行性研究报告
- 2025年高考数学必刷题分类:第77讲、定点、定值问题(教师版)
- 施工现场绿色施工节水与水资源利用案例
- 韩妆技巧与形象塑造知到智慧树章节测试课后答案2024年秋临沂大学
- 肺栓塞的完整版课件
- 培训课件医院岗位廉政风险分析与防范对策
- 2025年度互联网项目投资分红协议书
- 【大学课件】金属材料的冲击实验
- 教育离职承诺书模板
- 厂房及宿舍楼工程施工组织设计方案
- 第5课 工业革命与工厂制度 课件-高二历史统编版(2019)选择性必修2经济与社会生活
- 甲状腺功能亢进危象课件
评论
0/150
提交评论