面向多类型数据源的数据仓库构建及ETL关键技术的研究

面向多类型数据源的数据仓库构建及ETL关键技术的研究

论文摘要

数据仓库的创建与应用是企业信息化发展的必由之路。近十年来,为满足数据的集成、管理和决策支持的目的,在世界各地出现了大量的、不同规模的数据仓库系统。数据仓库数据源的类型也越来越多样化。尤其是Web数据源,文本数据源等实时数据源的出现,给数据仓库的构建以及ETL提出新的挑战。数据仓库技术面临若干紧迫问题:如何构建一个完善的数据仓库体系以适应多种类型的数据源;如何高效实现数据仓库体系中各个层次的ETL过程;如何保证ETL的实时性以及如何改进数据仓库的访问控制模型等。本文针对多类型数据源的特点,首先分析现有数据仓库的需求和数据源的种类。本文以国家海洋数据仓库系统为例,利用局部ETL和全局ETL两段式ETL过程;演化面向多类型数据源的数据仓库体系结构,包括抽取层、归档层、汇总层、仓库层和应用层,并且详细论证了每一层的设计思路和作用。基于此,本文研究了每一层涉及的若干关键问题。抽取层和归档层主要完成数据的抽取和归档工作,该层的ETL软件实现从数据源中抽取数据并装载到归档库中,因此称为局部ETL。本文重点研究了无结构的Web页面,半结构化文本和结构化的关系型数据库这三种数据源的局部ETL技术。首先,针对无结构的Web页面数据源的局部ETL问题,提出一种较传统方式更为高效的Web页面采集存储方法。把页面按照其布局特点分为若干个区域,把这些区域作为变化检测、存储和处理单元。其次,针对半结构化文本数据源的局部ETL问题,重点研究了半结构化非白描述型科学文本数据,提出了一种文本数据关系化方法,实现从文本模型到对象模型进而到关系模型的转换。此外如何保障关系化的效率和安全性也是本研究的重点。再次,针对结构化关系数据库数据源的局部ETL问题,本文分析和总结了影响ETL引擎性能的主要因素,提出了一种基于分布式数据库的ETL新方法,还提出了一种元数据驱动的ETL方法来克服现有ETL工具和手工编码方式的不足。基于E-LT方法,本文利用SQL语言实现了元数据驱动的ETL工具并详细测试了其执行性能。汇总层和仓库层完成从各个数据源的归档区到数据仓库的数据集成工作,该ETL过程称为全局ETL。由于数据仓库的实时性要求,多数据源全局ETL不仅要面临数据集成问题,还要保证ETL的实时或是近实时调度。本文提出了按照集成的自身规则触发ETL过程,并分配资源,以解决全局ETL的调度执行,以及它和其它数据仓库应用之间争夺数据仓库资源的问题。由于实时ETL执行过程中独占数据仓库资源,应用端一时无法连接数据仓库而处于一种离线状态。本文设计了一个支持离线运行的客户端框架,使得短时离线的过程对客户端用户透明。该离线客户端框架属于环境可感知软件框架,具有一定的通用性。数据仓库应用层主要包含查询检索,OLAP,数据挖掘等应用,还包括各应用的访问控制系统。数据仓库应用乃至数据仓库自身都需要一种良好的访问控制机制。本文提出两种访问控制模型。基于角色和上下文的访问控制模型是经典的基于角色的访问控制模型的扩展,适用于数据仓库应用以及任何面向最终用户的软件系统的访问控制。基于意图的访问控制模型适用于数据库系统,数据仓库系统等面向应用软件的系统的访问控制。本研究还在后者的基础上进一步研究了意图间的层次关系挖掘算法。总之,本文提出了一种面向多类型数据源的数据仓库体系结构和层次划分,基于该体系结构对各层次的关键问题进行分析和研究。所提出的所有模型和算法均给出实现方法或运用在实际项目中,理论分析和实验证明了所提出方法和技术的可行性和有效性。整个研究内容围绕着数据仓库和ETL过程的设计和实施,保证了数据仓库系统中数据的流动和访问的实时、灵活、高效,对数据仓库的建设和ETL的实施有一定指导作用。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 问题的提出
  • 1.2 数据仓库系统
  • 1.2.1 数据仓库系统结构
  • 1.2.2 数据仓库的数据源
  • 1.2.3 实时数据仓库系统
  • 1.3 ETL应用背景
  • 1.4 数据访问控制
  • 1.5 本文研究的问题
  • 1.6 本文的组织结构
  • 第二章 数据仓库系统结构和关键问题
  • 2.1 多类型数据源
  • 2.2 数据仓库需求
  • 2.3 面向多类型数据源的数据仓库体系结构
  • 2.3.1 数据源层
  • 2.3.2 抽取层
  • 2.3.3 归档层
  • 2.3.4 汇总层
  • 2.3.5 仓库层
  • 2.3.6 应用层
  • 2.4 关键研究问题
  • 2.4.1 Web数据的采集和存储
  • 2.4.2 文本数据的关系化
  • 2.4.3 数据库数据源ETL方法的改进
  • 2.4.4 全局ETL的实时调度
  • 2.4.5 数据仓库访问控制
  • 2.4.6 其它关键问题
  • 2.5 本章小结
  • 第三章 基于PAGE BLOCK的WEB数据采集和存储
  • 3.1 问题的提出
  • 3.2 研究背景
  • 3.3 基于Block的页面采集
  • 3.3.1 页面分区算法
  • 3.3.2 主题生成算法
  • 3.3.3 页面比较算法
  • 3.3.4 增量存储算法
  • 3.3.5 采集和存储流程
  • 3.4 原型系统的实现和测试
  • 3.4.1 原型系统结构
  • 3.4.2 算法评估
  • 3.4.3 系统测试
  • 3.5 相关工作
  • 3.6 本章小结
  • 第四章 基于模型映射的科学文本数据关系化
  • 4.1 问题的提出
  • 4.2 研究背景
  • 4.3 数据模型
  • 4.3.1 文本模型
  • 4.3.2 对象模型
  • 4.3.3 关系模型
  • 4.4 映射机制
  • 4.4.1 对象-文本映射
  • 4.4.2 对象-关系映射
  • 4.4.3 映射双向工程
  • 4.5 缓存和安全性机制
  • 4.5.1 缓存机制
  • 4.5.2 安全机制
  • 4.6 模型评估
  • 4.6.1 效率评估
  • 4.6.2 应用评估
  • 4.7 相关工作
  • 4.8 本章小结
  • 第五章 基于分布式数据库的ETL方法和元数据驱动的ETL实现
  • 5.1 问题的提出
  • 5.2 研究背景
  • 5.2.1 传统ETL方法
  • 5.2.2 ETL工具
  • 5.3 ETL方法改进
  • 5.3.1 E-LT方法
  • 5.3.2 E-LT方法的优点
  • 5.3.3 基于SQL的E-LT实现
  • 5.4 元数据驱动的ETL方法
  • 5.4.1 ETL过程中的元数据
  • 5.4.2 元数据驱动的ETL
  • 5.4.3 E-LT工具实现
  • 5.5 ETL性能分析
  • 5.5.1 实验数据分析
  • 5.5.2 案例数据分析
  • 5.6 相关工作
  • 5.7 本章小结
  • 第六章 基于集成规则的实时ETL调度和离线框架实现
  • 6.1 问题的提出
  • 6.2 基于集成规则调度算法
  • 6.2.1 理论依据
  • 6.2.2 规则定义
  • 6.2.3 调度算法
  • 6.3 支持离线的客户端软件框架
  • 6.3.1 相关定义
  • 6.3.2 面向数据的构件框架
  • 6.3.3 面向操作的构件框架
  • 6.3.4 面向服务的构件框架
  • 6.4 构件框架的实现
  • 6.4.1 请求处理构件
  • 6.4.2 操作缓存构件
  • 6.4.3 操作同步构件
  • 6.4.4 依赖处理构件
  • 6.4.5 构件间协作
  • 6.5 性能分析
  • 6.5.1 并行性能分析
  • 6.5.2 调度性能测试
  • 6.6 案例分析
  • 6.7 相关工作
  • 6.8 本章小结
  • 第七章 基于角色和意图的数据访问控制模型
  • 7.1 问题的提出
  • 7.2 引例
  • 7.3 C-RBAC模型和UML建模
  • 7.3.1 模型定义
  • 7.3.2 访问授权和验证机制
  • 7.4 基于意图的访问控制
  • 7.4.1 模型定义
  • 7.4.2 授权和验证
  • 7.5 意图层次树挖掘
  • 7.6 原型系统实现与分析
  • 7.6.1 原型系统的实现
  • 7.6.2 C-RBAC性能分析
  • 7.6.3 PBAC性能分析
  • 7.7 相关工作
  • 7.8 本章小结
  • 第八章 数据仓库系统实现和应用案例分析
  • 8.1 数据仓库系统实现
  • 8.2 应用案例分析
  • 8.3 本章小结
  • 第九章 总结和展望
  • 9.1 本文的主要贡献
  • 9.2 研究扩展
  • 9.3 下一步工作
  • 参考文献
  • 致谢
  • 攻博期间发表的论文
  • 攻博期间参加的项目
  • 作者简介
  • 相关论文文献

    标签:;  ;  ;  ;  ;  

    面向多类型数据源的数据仓库构建及ETL关键技术的研究
    下载Doc文档

    猜你喜欢