论文部分内容阅读
对象关系数据库技术是在继承关系数据库技术的基础上,增加面向对象特性,使面向对象技术与关系数据库技术紧密结合,可满足CAx、CASE、OIS、GIS等应用领域的需求而发展起来的一种新型数据库技术,它既具有管理复杂数据的能力,又能提供强有力的查询功能,是数据库研究和产品发展的一个重要方向。 本文主要研究对象关系数据库中的查询优化处理技术、连接谓词处理及索引技术、通用索引结构及其并发控制、基于引用的连接算法等关键技术。 针对选择条件中可以包含用户定义的复杂函数的新特点,本文提出了一种基于动态规划和Rank值的两阶段优化算法Predicate_Rolling_Up。它首先利用System R中的动态规划优化算法和启发式规则为连接运算产生连接次序,在此基础上,根据选择条件的Rank值,将它放置到执行规划中的适当位置。该方法开销小,且能产生优化的执行规划。 当连接条件中包含用户自定义的复杂函数时,原有的连接算法不能直接应用于该连接运算,为此,本文提出了限定变换函数T_R概念,来限定连接谓词中某些变元的取值范围,从而避免对整个关系的扫描,达到提高连接算法性能的目的。另外,基于连接索引概念,设计了相应的连接算法,并对算法的性能进行了具体分析。 对象关系数据库中的数据类型是可扩展的,与此相关的索引结构也应当能够扩展。为此,本文提出了一种扩展的通用索引树结构EGiST,来支持数据类型和查询谓词两方面的可扩展性要求。并针对EGiST结构的特点,采用扩展的右链技术以及谓词锁与两阶段数据锁联合使用的封锁策略,实现对EGiST索引树的高效并发操作,并可满足事务的可重复性读一致性要求。 针对对象关系数据模型和查询语言所支持的引用特性,设计了基于引用的连接算法Sort-Loops、Probe-Loops以及Segment-Join。经分析表明,这些算法在一定条件下均具有很好的性能。 在论文的末尾,对各章中的研究成果进行了总结,并对下一步的研究工作进行了展望。