APP下载

一种面向网络化制造的企业异构数据转换集成技术

2014-07-01刘建国

机械工程师 2014年4期
关键词:存储系统异构模块

刘建国

(黑龙江省建安公路工程有限公司,哈尔滨150001)

一种面向网络化制造的企业异构数据转换集成技术

刘建国

(黑龙江省建安公路工程有限公司,哈尔滨150001)

在企业集成环境中,提出了数据全生命周期管理的概念。针对制造企业内部的各种异构的数据存储系统、数据类型和存储格式,采用J2EE构架,搭建了可伸缩的、功能可配置的数据集成平台。该平台具有存储系统智能管理功能,为用户屏蔽了各种数据存储系统差异性。系统采用XML技术,使数据文件内部结构对外界可见;通过配置不同数据格式的数据转换模块,实现对不同存储格式数据的存储、转换及集成的智能管理。

J2EE;数据转换;数据集成;XML

0 引言

网络化制造是以数字化、柔性化、敏捷化为基本特征[1]。在网络化制造模式下,要求企业不仅要能够实现其内部业务软件系统的集成,还要实现不同企业之间应用系统的动态集成和相互协作。因此,对于制造企业,面向网络化制造就是利用网络技术,将异构、异地的应用系统集成起来,实现企业内部和企业之间应用集成,使企业具有快速重组、快速响应的能力,以适应市场需求的变化。由于企业使用的软件系统种类繁多,数据类型和数据输出的格式也不尽相同,造成了数据交流和共享的困难,进而成为企业应用集成的颈瓶。

本文针对网络化制造环境下,提出了数据全生命周期管理的概念,即:数据全生命周期管理是指在多数据存储系统、多数据存储格式的环境中,为用户屏蔽多数据存储系统、多数据存储格式带来的数据使用的差异性,提供统一的数据使用接口,以实现数据的存储、查询、读取、删除等操作。数据全生命周期管理体现了真正对用户有用的数据,是数据内容本身,而非其所在的数据存储系统以及与它的通信及其具体的数据存储格式。基于J2EE技术构建了一个数据集成平台-基于网络的企业数据集成系统(WEDIS,Web-based Enterprise Data Integration System),实现制造企业内部的各种异构的数据存储系统,数据类型和存储格式数据集成。

1 基于J2EE构建数据集成平台

1.1 支撑技术的选择

对于可伸缩的、分布式的软件平台,通常采用基于组件的方法构建,常用的分布式组件技术有COM+、CORBA(Common Object Request Broker Architecture)、J2EE(Java 2 Platform Enterprise Edition)技术等。但作为当前主流技术的J2EE技术有以下优点:

1)它能够保留原有企业资源;2)高效的开发;3)支持异构环境集成。J2EE作为一种技术规范,巩固了标准版(Java 2 Platform Standard Edition,J2SE)中的许多优点,“编写一次、随处运行”的特性、方便存取数据库的JDBC API,同时还提供了对EJB(Enterprise JavaBeans)、Java Servlet API、JSP(Java Server Pages)以及对XML技术的全面支持[2]。此外,J2EE对于XML技术的支持使其在网络化制造中的数据转换集成平台中具有不可替代的作用。因此,基于J2EE技术构建的数据集成平台是解决企业应用软件集成的首选。

1.2 WEDIS集成系统的体系结构

WEDIS系统是基于J2EE三层构架体系的,即:客户层、服务器层和数据层。其总体体系结构如图1所示。

1.2.1 客户端

客户端是数据用户终端,包括浏览器用户和应用程序用户。浏览器用户一般是指通过B/S的方式来使用平台进行数据操作的操作者;而应用程序则是通过SOAP协议来调用系统的数据操作接口,从而实现应用程序间无障碍的进行数据交换。

1.2.2 WEDIS系统

为了适应数据类型繁多、数据存储格式各异的现实,要求WEDIS系统具有灵活的结构,以实现功能上的开放性和性能上的伸缩性。针对以上的要求,平台的结构如图1所示。其中,工作引擎是平台的基体,其他的服务模块都将部署到它的上面。数据存储系统管理器具体维护在系统中注册的数据存储系统及其相关信息。数据收发模块与各个数据存储系统通信,进行各种数据操作。而服务模块则是根据用户的具体要求定制的。

图1 WEDIS系统体系结构

1)工作引擎。工作引擎模块是本系统中比较重要的模块之一,它起到了系统基体的作用,把各个服务模块“聚集”成一个系统。它为服务模块提供诸如用户身份验证、系统运行情况记录等基础性服务,而且还能“发现”可用的服务模块,即:每当系统启动时,工作引擎都将通过查询服务模块管理器来获得当前情况下可以为用户提供服务的服务模块,然后将这些服务模块提供的服务展示给用户。但工作引擎并不代表用户所需的具体需求,而是用户服务模块来代替的。这样的设计使得工作引擎和服务模块之间的关系非常松散,进而带来了性能上的可伸缩性,一旦有需要,可以将服务模块部署到别的机器上,从而获得巨大的性能优势;也可适应用户需求的变化和用户新的需求,一旦用户的某个需求发生变化,只需对相应的服务模块进行更改,当有新的需求出现时,用户只需在系统提供的二次开发环境中开发专门针对该需求的服务模块,服务模块提供本系统定义的接口,然后通过平台的部署工具将其部署到系统中去。这样,服务模块便会被工作引擎发现进而呈现给用户。

2)数据存储系统管理器。它向系统管理员提供专门的数据存储系统管理工具,以方便系统管理员注册数据存储系统,维护其有关诸如物理地址、通信协议、通信接口等信息。通过这些工具,系统管理员还可以随时启用或停用特定数据存储系统,从而实现数据存储系统的全面管理。数据存储系统管理器还要向数据收发模块提供用于和具体数据存储系统通信的通信连接(connection),数据收发模块通过它将实现与各种各样的数据存储系统通信。该连接是通过JCA(J2EE Connector Architecture)技术来实现的。

3)服务模块。服务模块是按用户需求定制的功能模块,当用户有新的需求,或现有需求发生变化时,则只需增加或改变相应的服务模块即可。我们的平台将开发服务模块二次开发环境,在此环境中,用户可以调用系统的基础服务。这样,用户通过它就可以方便地扩展系统的功能。我们为服务模块定义了与平台交互的接口。所以,只要用户遵守该接口,而具体用什么技术来实现,则不重要,在本次实现中,我们用Servlet和JSP技术开发与个人用户进行交互的服务模块,而使用EJB技术开发与远程客户端运用程序交互的服务模块,图2是系统服务模块结构图。

图2 WEDIS系统功能

1.2.3 数据层

此处数据层是指各种各样的数据存储系统,包括数据库系统,EIS系统,以及一切可以用于存储数据的系统。WEDIS系统的主要作用便是将它们封装起来,以方便各种应用系统对它们的访问。

2 WEDIS系统功能

WEDIS系统作为数据集成、转换的统一解决方案,充分实现了数据全生命周期管理功能。它为用户屏蔽了众多数据存储系统带来的不便,提出一种统一的机制解决数据集成、转换,并且为用户提供了一套统一的数据存储、查询和读取的接口,其功能如图2所示。

2.1 智能管理各种数据存储系统

图3 WEDIS数据存储系统管理

本系统提供了管理各种数据存储系统的功能,如图3为WEDIS数据存储系统管理。它首先包括对数据存储系统的基本管理功能。系统管理员通过它可灵活、机动地在该系统中注册所需要的各种数据存储系统,配置这些数据存储系统的诸如物理地址、交互接口和通信协议等的信息;与此同时,也可以将特定的数据存储系统从本系统中注销。此外,系统管理员还可以动态地启用、停用各个存储系统。而系统本身则维护关于数据存储系统各种的信息。

系统的数据存储系统管理管理功能还包括向外界提供的统一的数据操作接口,如:读取数据,查询数据,删除数据和存储数据。这些接口将以Web Component和Web Service endpoint的形式提供。通过Web Component形式的接口,浏览器用户可以与本系统交互,从而以统一的方式实现对各种数据存储系统的操作,简化的各种数据存储系统的使用。通过Web Service endpoint形式的接口,本系统中所定义的各个服务模块和远程应用程序便可以与各种数据存储系统交互,这样,便为企业应用集成奠定了基础。系统内部则通过JCA(J2EE Connector Architecture)技术与具体的数据存储系统通信,将数据存储到各个数据存储系统中去,或从中读取特定数据。

2.2 管理在数据存储系统中的数据

系统为数据用户提供的数据操作包括数据存储、数据查询、数据读取和数据删除。系统对数据的管理是指为了响应用户的操作而将数据存储到特定地方,或从中读取特定数据,或检索出特定数据。其中存储数据、读取数据和删除数据都可以通过与数据存储系统的交互完成,但检索数据则不然,由于数据是被分散地存储在不同的数据存储系统中的,如果检索数据也通过与数据存储系统进行交互来完成,其效率是相当低的,实际能记录的关于数据的信息也是有限的。因此,将在本系统层面维护通过该系统进行存储的数据的信息,这些信息包括诸如数据名称、数据存储格式、数据文件大小等基本信息和数据存储时间、数据存储者等数据操作信息。这样一来,方便了数据查询管理,使用户可从多角度获取数据,也可了解数据多方面的信息。

2.3 数据转换和集成

对用户而言,真正有用的是数据的内容,但在实际中却因为存在着各种异质、异构的应用软件和信息系统而使得即使同一种数据也有不同的存储格式,这种情况在一般情况下不是问题,但在进行各种应用集成时,在各个应用软件之间需要进行通信、交流时,却显得尤为突出,从而形成了所谓的信息孤岛。

在该方案中,我们首先搭建一个数据转换平台,然后针对具体的转换需求,开发特定的转换模块,最后将转换模块部署到平台上,以实现对各种数据的转换。该方案避开了构建统一数据格式,或者说,该方案并不依赖于统一的存储格式,而是直接在数据格式之间进行转换,这样作最直接的好处是降低了转换的难度以及提高了数据转换的精度,而且能高度适应将来的变化。这样一来,企业可以较低的成本实现数据转换,而且能保证转换精度,能适应企业今后的发展变化。以同样的原理,我们也将采用“平台+数据集成模块”的形式来实现数据集成,该方案特别适合企业需求多变的情况。通过上述方案的实施,我们较好地解决了数据转换、集成问题,为实现企业集成奠定了坚实的基础。

3 基于XML产品数据转换

XML是W3C提出的一种基于互联网上交换数据的标准,是标准通用语言SGML的简化版本。XML是定义标记语言的一种元语言,语法简单,其文档中的数据内容和表现形式是分离的,文档编写一次可以以不同的方式解析并表现出来,为数据表达提供了一种与平台无关的格式。通过XML来表达知识、传递数据,它具有的可扩展性、结构性、平台无关性使XML成为数据交换和网络计算的基础[3]。在企业应用集成中,利用XML可以实现不同应用和平台间数据存储和信息传递,允许不同来源的数据无缝集成。而且XML支持WEB应用,浏览器与文档可直接进行动态的交互操作。XML的上述这些特点以及它对J2EE技术的完全支持,已经成为异构系统间数据交换的首选语言。

在集成系统中,数据转换模块功能通过模块描述文档来对其进行描述。其中模块描述文档采用XML技术来实现,而功能转换部分是真正现实数据转换功能的执行机构,其数据转换过程如图4所示。

图4 XML数据转换流程

对于转换模块,我们对外定义了其统一接口,而其内部的具体实现却可不同。这正是平台的创新点。从数据转换图可知,首先通过文件读取器读取一种软件设计的图形文件,转换成用XML表示的临时文件,然后在不同的XML临时文件之间进行映射,最后再通过文件生成器将临时文件生成另一种设计软件目标文件。

4 结论

针对企业的实际情况,并在对该领域多年研究的基础上,提出了一套完整的数据集成转换方案,基于J2EE技术构建了网络环境下的企业数据集成和转换平台,开发基于XML的异构数据转换模块,实现了对各种异构数据的集成、转换,实现了数据全生命周期管理的理念,解决了信息孤岛的问题,为企业应用集成奠定了基础,加快了企业信息化进程。

[1] 杨叔子,吴波,胡春华,等.网络化制造与企业集成[J].中国机械工程,2000(2):45-48.

[2] 文震.基于J2EE的工作流管理系统的设计与实现[D].成都:四川大学,2004:25-26.

[3] 石为人,冯朝刚,张星.基于中间件的企业应用集成[J].重庆大学学报,2003(12):48-50.

(编辑:立 明)

TP 391.7

A

1002-2333(2014)04-0136-03

刘建国(1959—),男,助理工程师,从事公路机械方面工作。

2013-12-20

猜你喜欢

存储系统异构模块
28通道收发处理模块设计
“选修3—3”模块的复习备考
试论同课异构之“同”与“异”
分布式存储系统在企业档案管理中的应用
天河超算存储系统在美创佳绩
异构醇醚在超浓缩洗衣液中的应用探索
overlay SDN实现异构兼容的关键技术
LTE异构网技术与组网研究
华为震撼发布新一代OceanStor 18000 V3系列高端存储系统
一种基于STM32的具有断电保护机制的采集存储系统设计