论文摘要
异构数据库系统(HDBS)需要屏蔽已有的各种异构数据管理系统不同的访问方法和用户界面,给用户呈现一个访问多种异构数据源的公共接口,提供一个集成处理多种数据源、整合多个数据查询结果的信息交互处理平台。查询处理是异构数据库系统的关键技术之一,查询分解和查询并发调度是查询处理的核心内容。本文分析了异构数据库系统的特点,针对全局数据库(GDB)和局部数据库(LDB)数据模式差异,语义差异等,设计了一个异构数据库集成系统中的数据字典。其中包括全局数据字典、局部数据字典及全局模式到局部模式的映射。此外,还在数据字典中增加了中间结果状态信息表,用来存储在全局查询分解过程中得到的中间结果。根据该信息表可以更方便地合并成全局查询分解的最终结果。针对异构数据库系统中各个局部数据源的数据模式存在的差异,本文提出了一种SQL语句的RAC表示方法。这种表示方法只涉及SQL语句中用到的数据库关系R,属性A及查询条件C,屏蔽了各异构数据源中查询语句之间的差异,提供了一种SQL语句的统一表示形式。在SQL语句的RAC表示方法的基础上,本文还设计了全局查询语句的分解算法,从而实现把全局查询语句分解为针对各个局部数据源的局部子查询语句,完成查询由全局模式到局部模式的转换,并把分解结果发送到对应的局部数据源进行查询更新操作。本文还对异构数据库查询中的并发控制问题进行了分析研究,基于2PL协议,并结合串行优先图,提出了一种异构数据库系统基于Operation-Lock的并发控制技术。该并发控制技术是对基本查询更新操作所涉及的元组进行加锁,在一定程度上提高了事务的并发度。最后对该技术的正确性及有效性进行了证明。