海量多数据库集成系统的查询处理研究

海量多数据库集成系统的查询处理研究

论文摘要

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

论文目录

  • 摘要
  • Abstract
  • 第1章 绪论
  • 1.1 课题背景及意义
  • 1.2 国内外研究现状
  • 1.2.1 信息集成
  • 1.2.2 集成系统的查询处理
  • 1.2.3 集成系统的查询优化
  • 1.2.4 海量信息的处理方法
  • 1.3 研究内容和主要成果
  • 1.3.1 M-SQL查询语言
  • 1.3.2 查询分解
  • 1.3.3 结果合并
  • 1.3.4 查询优化方法
  • 1.4 章节安排
  • 第2章 系统结构、模式定义和M-SQL查询语言
  • 2.1 引言
  • 2.2 系统概述和系统结构
  • 2.3 模式映射
  • 2.4 一个简单的数据模式示例
  • 2.5 M-SQL查询语言
  • 2.6 查询处理器概述
  • 2.7 本章小结
  • 第3章 查询分解
  • 3.1 引言
  • 3.2 查询语法树的生成
  • 3.3 查询计划
  • 3.4 查询计划的生成
  • 3.4.1 算法描述
  • 3.4.2 连接顺序的选择
  • 3.4.3 算法分析
  • 3.5 本章小结
  • 第4章 结果合并
  • 4.1 引言
  • 4.2 结果合并的框架
  • 4.3 连接算法
  • 4.3.1 循环嵌套算法
  • 4.3.2 基于排序的连接算法
  • 4.4 缓存系统
  • 4.4.1 分块机制
  • 4.4.2 缓存的替换算法
  • 4.4.3 缓存对结果输出的支持
  • 4.5 非阻塞的结果合并算法
  • 4.5.1 非阻塞的join算法
  • 4.5.2 非阻塞的循环嵌套算法
  • 4.6 对海量数据的支持
  • 4.6.1 网络传输的支持
  • 4.6.2 结果合并的支持
  • 4.7 本章小结
  • 第5章 查询优化
  • 5.1 引言
  • 5.2 基于缓存的查询优化
  • 5.3 基于改写子查询的优化方法
  • 5.3.1 聚集操作和计算
  • 5.3.2 去NULL值
  • 5.3.3 排序
  • 5.3.4 除去冗余操作
  • 5.4 本章小结
  • 第6章 系统实现和实验结果
  • 6.1 系统实现
  • 6.2 实验配置
  • 6.3 实验结果
  • 6.3.1 查询结果的正确性
  • 6.3.2 查询处理
  • 6.3.3 数据量变化
  • 6.3.4 缓存的变化
  • 6.4 本章小结
  • 结论
  • 参考文献
  • 攻读硕士学位期间发表的学术论文
  • 致谢
  • 相关论文文献

    标签:;  ;  ;  ;  

    海量多数据库集成系统的查询处理研究
    下载Doc文档

    猜你喜欢