论文部分内容阅读
数据仓库被提出为集成企业孤岛式信息和辅助企业决策提供了解决方案。ETL(数据抽取Extract、转换Transform、加载Load)是为构建数据仓库过程中实现数据转换及迁移的一个重要工具。ETL工具能够实现从许多异构系统中抽取采集数据,对其进行加工转换,把业务操作型数据转化为面向决策的数据仓库存储的数据[1]。尽管如此,如果进入数据仓库中的信息不准确,数据质量没有保证,数据仓库技术就不能产生理想的结果,甚至会产生错误的分析结果,从而误导决策[1、2]。因此对数据进行清洗成为数据集成工具另一重要环节。针对现有的数据集成产品普遍存在着价格昂贵、对高性能服务器依赖性高等问题,本研究所前期提出了利用分布式ETL[4][5]处理来解决集中式ETL所需要高性能服务器和高硬件服务代价等问题。本文所提出的一种ETL与数据清洗相结合的分布式数据集成工具。第一,针对前期分布式ETL模型中的主控服务器的瓶颈问题[4]提出基于环形的计算服务器的分布ETL,利用Agent远程通信技术把分布式在网络上的各个计算服务器在逻辑层上构建成环,利用环形网上各个不同的计算服务节点进行分布计算。环形计算服务器的逻辑拓扑结构,有效的解决了前期提到的分布式计算的主控服务器的瓶颈问题,采用这种模型同时也简化了分布式集成工具中的负载平衡的工作。第二,针对已有ETL数据集成工具复杂性和可用性问题,本系统通过执行引擎各个组件的多线程运行和在前后组件之间建立内存缓冲区提高ETL作业的执行速度。同时利用基于hsqldb(java内置SQL数据库,可配置内存数据库运行模式)转换规则解析引擎,大大提高了对复杂规则的解析能力。第三,针对传统的缺乏数据质量控制的ETL工具加入数据清洗模块。本文对数据清洗的原理、方法、流程及算法进行了分析和总结,并主要针对属性的清洗方面和相似重复消除方面的算法进行研究实现,同时以图形化的方式为用户提供数据清洗规则设计的可视化操作。通过环形分布式ETL与数据清洗相结合的数据集成工具,两者发挥各自的优势功能,在实现高效可靠的数据集成工具的同时保证了加载入数据仓库的数据的准确性。