论文部分内容阅读
近年来,数据库中的数据量与日俱增、数据形式多种多样,但各种应用的核心—数据,仍以不同形式存储在不同的系统中,分而不聚,聚而不合,呈分布异构状态。越来越多的用户希望能够透明地获取和处理来自这些海量数据源中的有用数据,实现多个软硬件系统以及不同数据源之间的互操作。然而,这些数据源物理上可能分布在异构环境的多个自治域中,有着不同的数据表示、存储格式、访问控制策略;逻辑上则可能在数据模型、操纵语言和数据语义等方面存在着很大差异。同时,这些数据源的可共享性、共享方式、共享内容等也可能随时发生变化。设计一个支持公共数据模型和统一查询语言的多数据库集成系统,是实现这种交互操作的一种较好办法。多数据库集成系统可以屏蔽现在已有的各种异构数据管理系统不同的访问方法和用户界面,给用户呈现一个访问多数据源的公共接口,提供一个集成处理多种数据源、整合多个数据查询结果的数据交互处理平台。查询处理是多数据库集成系统的关键技术之一,查询分解、结果合并和查询优化是查询处理的核心内容。首先,本文通过定义集成系统中查询处理的基本概念,选定M-SQL作为查询语言,提出了查询处理的基本体系结构。在此基础上,给出了全局查询分解的基本原则和查询分解算法。其次,本文给出结果合并方法。结果合并的过程实质上是对子查询结果进行连接的过程,本文给出了基本的连接算法和非阻塞的连接算法,后者尽快的将一部分数据返回给用户,减少了用户查询等待的时间,提高系统的性能。最后,本文给出基于重写子查询的查询优化方法。基于上述研究结果,本文研制和开发了一个基于Web服务的多数据库集成系统原型,它能够提供对Oracle、Sybase、DB2等数据库系统的透明访问,主要功能涵盖了查询分解,结果合并和查询优化等方面。最后本文给出了对系统的性能分析与评价。