摘要:本文就智能建筑信息系统数据整合的必要性进行讨论,并探讨数据整合的技术实现方法,对数据整合的数据抽取、清洗、转换和加栽工具进行比对和介绍。
一、引言
近年来,随着经济全球化的趋势,信息化建设进入快行道,计算机应用在社会的各个领域百花齐放,创造优越办公环境的智能建筑信息系统也逐步积累了数据结构和技术平台均存在差异的大量异构数据,如何将这些散落在各个子系统中的数据整合起来,转换成有用的管理信息、决策信息是摆在我们面前的一个技术难题。
二、 数据整合是信息化建设的必然要求
在信息化建设过程中,由于各类信息系统建设阶段所依赖的技术局限性,积累了大量采用不同技术平台的异构数据源。这些数据源所依赖的业务应用系统、数据库管理系统甚至操作系统平台之间均存在不同,这些分散的、不同的计算机信息系统支持了业务的发展要求,但是,异构数据源的整合、集成也成为信息化建设过程经常遇到的一个现实问题,也越来越成为制约信息化建设和实现数据共享,以及使信息化建设投资重复的一个重要因素。充分利用先进的数据整合技术,整合数据、共享信息,推动信息化向更高层面发展成为必然。
目前,随着数据仓库(Data Warehousing)技术的成熟,数据整合工作也从探索阶段发展到应用实施,无论是建立面向智能建筑各子系统的数据集市,还是直接建设企业级的数据仓库,应用于管理、监控甚至数据统信息决策都主要由以下几个部分构成:
(1)众多数据来源;
(2)采用ETL(Extract-Transform-Load)工具来实现数据的抽取、转换和装载;
(3)利用ETL工具维护元数据中心及元数据交换架构;
(4)数据仓库或数据集市用于存储明细数据,支持包括ROLAP、MOLAP查询的数据结构;
(5)利用前端展现工具实现OLAP查询、分析以及对明细数据的即席查询。
分析以上几部分任务,对于智能建筑各子系统的数据源,快捷、灵活、高效的数据整合是建设智能建筑信息系统的基础,ETL工具是实现数据整合的有效手段。
三、 数据整合技术分析
1、数据整合的两种方式比较
为了解决数据抽取、转换、清洗和加载工作,通常可以采用两种方式,一是自行开发程序代码,二是采用专用的ETL工具。二者比较如下:
(1) 用自行开发代码:
l 对于不同的数据源,手工开发程序代码,工作量和开发周期长;
l 数据的准确度与数据质量不可保证;
l 整合复杂度高,无法适应所有系统;
l 众多的接口程序集成、调度存在困难。
(2) 用ETL工具:
l 图形化操作界面,使用鼠标拖曳功能便可整合异构数据;
l 在不同操作系统平台上支持数据的转换和整合作业;
l 提供一流的数据质量和端对端的元数据管理功能;
l 并行处理引擎解决数据量大、整合过程复杂等问题。
2、ETL工具探讨
目前,已经有比较成熟的数据整合工具出现,有代表意义的一是Ascential公司的数据抽取、转换、加载工具DataStage ,支持主机、UNIx和NT平台的数据整合解决方案;二是Sagent Data Load Server,属第三方的ETL工具,可视化管理,性能优异,可以连接多种数据库,支持多元数据库,使用方便,可以定制复杂的数据抽取,清洗,转换过程,并可以定时自动执行,目前只有WindowsNT/2000、SUN Solaris产品;三是与IBM DB2集成的ETL工具IBM DB2 Warehouse Control Center,也可以完成大部分ETL功能。下面以DataSdage为例进行相关探讨。
DataStage 工具适用于客户机/服务器环境、主机环境或混合型环境,是目前唯一可在单一跨平台界面上支持上述所有环境的ETL解决方案, DataStage服务端支持几乎所有的操作系统平台,支持各种关系数据库、ODBC、平面文件、ERP系统等多种数据源,DataStage提供更多的数据库专用高速访问接口。DataStage提供图形化设计界面,通过鼠标的拖拽就可以完成设计,提供一个非常强大的转换规则库,其中包含很多个常用规则。这些预定义的转换规则是带参数的C++函数(COM objects)。这些规则集成在一个友好的界面中,开发人员可以通过拖拽方式来使用这些规则,能够大量地缩短开发和测试时间,同时,支持灵活的自定义转换规则。
数据整合应用架构如图所示:
[img]200621311442710724.gif[/img]
3、几点建议
(1)数据整合过程中,应用ETL工具要很好地考虑ETL服务器的硬件配置,ETL更多地是消耗计算机系统的CPU资源,因此需要足够的CPU资源保证数据抽取、整合效率;
(2)选择ETL工具要充分考虑并行效率,如果工具不支持并行处理,在实际应用过程中,面向不同应用的多任务调度的时间将无法保证;
(3)ETL的实施必然基于数据仓库的存储模型,也就是说一个成功的数据整合系统必然有一个设计合理、方便扩展的后台数据仓库模型,必须避免建设多个相对独立的数据集市,这样会带来再次需要数据重新整合的尴尬;
(4)虽然ETL工具可以直接连接不同的数据库管理系统,但在系统实施中,为了不对业务系统的正常运行造成影响,最好能够建立一个数据缓冲区,将各业务系统的操作型数据置于其中,ETL仅对缓冲区的数据进行操作;
(5)利用ETL工具向数据仓库装载数据时,如果数据库为无日志状态,大批量数据加载可以极大地提高效率,鉴于数据仓库系统的非操作性数据特征,可以考虑采用此方式。
四、 结束语
数据整合技术作为挖掘数据,整合信息资源的有力工具,能够有效解决日益严重的“信息孤岛”,繁重的数据采集、整理和分析任务,多数据源、异技术架构的数据存储等诸多问题,将在智能建筑建设进程中日益发挥不可替代的重要作用。




