论文部分内容阅读
随着分布计算和网络技术的不断发展,传统的数据库技术已越来越不能满足数据共享和互操作的需要。同时,已有的数据库系统又不可能全部丢弃,因而研制能同时访问和处理来自多个数据库中数据的多数据库系统已成为必然趋势。多数据库系统是解决在已存的、异构的、分布的多个局部数据库系统之间数据共享和集成的问题。由于多数据库系统具有异构性、分布性和局部自治性的特点,使得多数据库查询更新处理与传统数据库的查询更新处理有很大的不同。
针对上述问题,本课题组提出了一种新的基于缓存的多数据中间件模型。该多数据库中间件是“建立在DBMS之上的DBMS”,在应用中通过对多数据库中间件的使用,使得用户可以透明地访问多个分布异构数据源(数据库系统或者文件系统等)。多数据库中间件支持局部数据库系统动态加入或撤出,可完成局部数据和缓存数据之间的双向同步/异步更新,向用户提供一个公共统一的视图来查询和更新数据。
本文分析了国内外多数据库技术的研究现状,以及两种基本的多数据库模型,分析其不足之处。接着重点介绍了课题组提出的多数据库中间件模型。该多数据库中间件模型由上推机(局部代理),集成机,SQL服务器等几部分组成。
本文的重点是该多数据库中间件中的SQL服务器的设计与实现。
首先,讨论了多数据库系统的查询语言和查询处理及优化。在基于所设计的多数据库系统的模型的查询处理中,对标准查询语言SQL进行扩充,设计了多数据库查询语言。接着对传统数据库、分布式数据库和多数据库中查询处理进行了分析和比较,提出了本系统的查询处理流程。
其次,对多数据库服务器中几个相关问题进行了分析与并提出了解决方案,如查询的并发访问的研究、多数据库系统中的数据命名、局部数据源的即插即用的研究和系统安全问题的研究。
最后,基于前面的分析和设计,重点介绍了多数据库服务器的实现。这部分中,对于本系统的查询处理进行了详细的分析与设计,讨论了词法语法分析、全局分解、查询优化、缓存预处理及执行调度等。此外对数据的更新及全局事务的执行,也给出了本系统的实现方法。