《基于ESB的轻量级通用数据交换平台的可行性分析.docx》由会员分享,可在线阅读,更多相关《基于ESB的轻量级通用数据交换平台的可行性分析.docx(46页珍藏版)》请在三一办公上搜索。
1、目录第1章 项目申请的必要性41.1 数据交换平台的研究意义41.2 数据交换技术的发展情况41.3 本项目研究的目的和内容51.4 本项目的先进性及创新性6第2章 申报单位情况82.1 申报单位基本情况82.2 研究开发能力92.2.1项目组成员92.2.2项目主要承担人员简介112.2.3项目研发的现有基础152.3 财务、经济状况192.4 申报单位的科研及生产经营管理状况202.4.1科研情况202.4.2生产经营情况20第3章 项目实施方案223.1 项目研究目标、范围及必要性223.1.1项目目标223.1.2项目范围223.1.3项目的必要性223.2 项目研究现状233.2.1
2、数据交换技术的发展阶段233.2.2国外商用数据交换平台发展情况233.2.3开源数据交换平台研究情况243.2.4国内数据交换平台研究和应用情况243.3 项目研究的主要内容253.4 项目的技术方案263.4.1数据交换平台总体设计263.4.2规范化的交换目录与数据元管理313.4.3基于SOA的企业服务总线323.4.4丰富的可拓展的数据适配器技术343.4.5组织机构及权限配置接口353.4.6可视化数据交换配置工具353.4.7一体化的监控管理接口363.4.8可配置的应用服务接口363.4.9轻量级、高性能的数据交换引擎373.5 拟解决的关键问题463.6 主要创新点463.7
3、 主要技术参数指标473.7.1性能要求473.7.2可靠性要求473.7.3可扩展性要求483.7.4安全性要求483.7.5易用性要求483.7.6数据处理精度要求493.8 项目的阶段与进度493.9 资金筹措及使用513.9.1投资估算及资金筹措513.9.2资金使用计划51第4章 经济及社会效益分析544.1 市场分析544.2 应用前景分析554.3 经济效益分析564.4 社会效益分析58第5章 风险分析605.1 技术风险605.2 管理风险605.3 市场风险61第1章 项目申请的必要性包括:项目的重要意义、技术的先进性及创新性(与国内外同类研究的比较)等。1.1 数据交换平
4、台的研究意义数据交换平台是实现异构系统之间、新老系统之间信息透明交换的一种解决方式。通过采用统一的数据交换标准,各应用系统与数据交换平台相连,通过数据交换平台来实现数据共享和路由,由于隔离了数据存储层和应用层,使得应用与其底层的数据结构和存储方式无关,从而不需要对原有业务系统进行改造,也不需要对已有的业务流程重新开发。这种连接方式实现了数据的无缝交换和共享访问,保证了各业务系统的有效协同,同时又能保证各应用系统的相互独立性和低耦合性,从整体上提高了系统运作效率和安全性。数据交换平台之所以能够交换基于不同操作平台和数据库的数据,主要得益于其对信息的统一表示、完整的消息服务能力以及功能完备的交换平
5、台软件系统。信息的统一表示依靠元语言标准、信息标准、元数据标准、显示标准、解析、转换和封装标准来保证。完整的消息服务能力依靠信息的统一封装、统一编址、信息的可靠性传输、路由管理等技术手段实现。交换平台软件系统一般采用基于相同数据库管理系统的分布式系统的数据交换、消息中间件服务器等技术方式。1.2 数据交换技术的发展情况1 商用数据交换平台发展情况国内外著名的系统软件厂商,如IBM、SUN、ORACLE等都可提供不同形式的数据交换解决方案。但这些厂商提供的数据交换基本上都依赖于并嵌入于它们自身现有的基础系统软件中(如数据库管理系统、SOA系统等),使得它们的数据交换平台的应用成本极高、技术难度大
6、,需要大量的经费和技术投入才能开展。因此其广泛应用受到的限制。2 开源数据交换平台研究情况数据交换平台的研究受到的业界的广泛关注和重视,经过近几年的发展,出现了许多开源的数据交换技术,如BIE(商业集成引擎)一个完全基于Java跨平台的企业应用集成(EAI)服务器;XmlBlaster 基于Java的MOM (Message oriented Middleware);Mule一个企业服务总线(ESB)消息框架;WSO2 ESB一套轻量级以XML和Web service为核心的ESB(Enterprise Service Bus)等等。这些系统以EAI或ESB为理念,提供应用系统整合和数据交换功
7、能。但是这些系统基本上不能为一般用户提供易操作性和稳定性的使用特性,需经过专业的机构和技术人员进行较深入的研究和二次开发才能有效地得到应用。3 国内数据交换平台研究和应用情况国内数据交换平台近几年在研究和应用方面有了良好的发展。在研究方面,主要基于通用数据库技术和开源ESB技术,近年来基于SOA和ESB理念和技术的研究越来越多和深入。在应用方面,主要是针对行业的系统,如电子政务数据交换、企业应用集成(EAI)、教育数据交换等,这些系统的行业性强,通用性较低。在产品方面,目前比较有影响的系统有金蝶的ESB(也是基于开源的ESB),但应用需要专业人员和大量二次开发;其它产品也有不少,但未能成为主流
8、和形成规范。1.3 本项目研究的目的和内容本项目研究基于ESB、SOA、J2EE等先进技术、理念和架构的轻量的、通用的数据交换平台。平台可各种数据系统集成在一起完成特定的业务,提供多源的、同构或异构数据之间的交换目录和数据元定义、交换服务管理、数据适配器配置、数据交换调度管理、交换过程处理、数据交换管理以及可视化管理监控等方面功能。项目的主要研究内容如下:1.数据交换目录与数据元管理。平台可依据数据元的国际、国家标准以及应用行业(如政务、教育、企业等)自身的信息标准,规范化地定义和描述数据元、数据字典、数据交互目录。2.数据交换服务管理。基于SOA理念定义和描述所需的数据交换服务清单,包括服务
9、清单管理、服务对象(提供者、请求者)管理、服务注册管理、服务测试管理、服务发布管理、数据源管理等。3.数据适配器技术。数据适配器连接并访问数据交换中涉及到的可能的数据对象(数据源/目)。平台支持适配器定义、适配器安装与卸除、适配器测试、适配器配置等。主要数据适配器将各种数据库、电子表格(EXEL)、数据文件、应用服务(WEB SERVICE)、数据目录(LDAP)等。适配器根据需要可扩充。4.数据交换管理技术。定义和配置数据交换的一个或数个示例。主要包括交换发布与订阅配置管理、交换机构管理、触发器管理、数据发布管理、数据订阅管理等。5.数据交换调度技术。通过任务排程管理对数据交换操作提供调度管
10、理。主要包括排成清单管理(新增、删除、编辑等)、排程属性管理(发起方式、时间、频度、批量规模等)、排程监控(日志、分析等)。6.管道式交换过程处理技术。提供交换过程中的管道式数据处理插件,主要包括数据抽取、格式转换、内容过滤、内容转换、安全加密等方面功能。7.实用的数据交换平台管理。实现对数据交换的状况和性能进行管理,主要包括用户管理、角色管理、授权管理、配置管理、备份恢复、服务统计、服务分析、日志监控等。8.轻量级体系架构。平台将基于开放、开源、主流的轻量级J2EE应用支持平台和开发工具,实现功能强、系统开销小、高效、易部署、易管理的轻量、通用的数据交换平台。 9.其他特殊交换技术。平台在常
11、规数据交换的基础上,还可支持超大数据(如超大文件、超大数据库等)、流数据(如实时视频流)的数据交换,满足特殊的数据交换需求。1.4 本项目的先进性及创新性本项目将力求在以下几个方面显现出先进行和创新性:1.规范化的交换目录与数据元管理。系统可依据国际/国家标准以及应用行业自身的信息标准,规范化地定义和描述与数据交换相关的数据元、数据字典、数据交互目录。2.基于SOA的数据交换服务管理。系统基于SOA理念定义和描述所需的数据交换服务清单。3.丰富的可拓展的数据适配器。系统支持主流数据适配器(数据库、电子表格(EXEL)、应用服务(WEB SERVICE)、数据目录(LDAP)等,并可根据需要扩充
12、。4.管道式交换过程处理插件技术。提供交换过程中的管道式数据处理插件,主要包括数据抽取、格式转换、内容过滤、内容转换、安全加密等方面功能。5.基于开源技术的轻量级体系架构。平台将基于开放、开源、主流的轻量级J2EE应用支持平台和开发工具,实现功能强、系统开销小、高效、易部署、易管理的轻量、通用的数据交换平台。 6.其他特殊交换技术。平台在常规数据交换的基础上,还可支持超大数据(如超大文件、超大数据库等)、流数据(如实时视频流)的数据交换。第2章 申报单位情况2.1 申报单位基本情况第3章 项目实施方案3.1 项目研究目标、范围及必要性3.1.1 项目目标本项目研究基于ESB、SOA、J2EE等
13、先进技术、理念和架构的轻量的、通用的数据交换平台。平台可各种数据系统集成在一起完成特定的业务,提供多源的、同构或异构数据之间的交换目录和数据元定义、交换服务管理、数据适配器配置、数据交换调度管理、交换过程处理、数据交换管理以及可视化管理监控等方面功能。3.1.2 项目范围本项目的研究范围主要包括:在高等教育行业中,建立多源的、同构或异构数据之间的交换目录和数据元定义、交换服务管理、数据适配器配置、数据交换调度管理、交换过程处理、数据交换管理以及可视化管理监控等方面功能。3.1.3 项目的必要性数据交换平台是实现异构系统之间、新老系统之间信息透明交换的一种解决方式。通过采用统一的数据交换标准,各
14、应用系统与数据交换平台相连,通过数据交换平台来实现数据共享和路由,由于隔离了数据存储层和应用层,使得应用与其底层的数据结构和存储方式无关,从而不需要对原有业务系统进行改造,也不需要对已有的业务流程重新开发。这种连接方式实现了数据的无缝交换和共享访问,保证了各业务系统的有效协同,同时又能保证各应用系统的相互独立性和低耦合性,从整体上提高了系统运作效率和安全性。数据交换平台之所以能够交换基于不同操作平台和数据库的数据,主要得益于其对信息的统一表示、完整的消息服务能力以及功能完备的交换平台软件系统。信息的统一表示依靠元语言标准、信息标准、元数据标准、显示标准、解析、转换和封装标准来保证。完整的消息服
15、务能力依靠信息的统一封装、统一编址、信息的可靠性传输、路由管理等技术手段实现。交换平台软件系统一般采用基于相同数据库管理系统的分布式系统的数据交换、消息中间件服务器等技术方式。3.2 项目研究现状3.2.1 数据交换技术的发展阶段针对目前企业所关心的数据集成、交换的问题,业界主要有两种解决方法,一种是传数据交换技术,它大致包括三个发展阶段:第1阶段,以EDI(Electroc Data Interchange)为基础的电子数据交换;第2阶段,以多层结构Web技术为基础的信息发布;第3阶以XML等第二代Web技术为代表的数据交换。另一种就是建立数据仓库,通过数抽取、转换、清理和装载(ETL),将
16、数据从一个系统传输到另一个系统,同时对其进理和修改,从而符合数据仓库的需求,达到数据集成和数据交换的目的。本项目的“数据交换”特指第二种方法,即建立数据仓库时的ETL(Extract一Transform一Load)过程。3.2.2 国外商用数据交换平台发展情况国外著名的系统软件厂商,如IBM、SUN、ORACLE等都可提供不同形式的数据交换解决方案。但这些厂商提供的数据交换基本上都依赖于并嵌入于它们自身现有的基础系统软件中(如数据库管理系统、SOA系统等),使得它们的数据交换平台的应用成本极高、技术难度大,需要大量的经费和技术投入才能开展。因此其广泛应用受到的限制。这些厂商提供的产品,还包括整
17、体数据仓库方案供应商的产品,它们能从功能上满足企业数据交换的需求,如IBM的Warehouse Manager。在本项目的进展过程中主要尝试过Fioran。公司的ESB(Enterise Service Bus)产品和 RedHat的MetaMatrix,相比于专门的ETL工具,这些产品稍显边缘化,但其强大的功能在企业信息集成管理方面较为出色。此外,还有许多专业化的中小软件厂商,提供数据交换产品:首先是专门的ETL工具。国外的ETL技术比较领先,已形成规模化、专业化的软件市较为成熟的产品包括三大主流ETL:Ascential公司的Datastage、Informatica公司的Datastag
18、e、Informatica公司的Powercente:以及 NCRTeradata公司的 ETLAutomation。这类专业厂商的产品一般都有较完善的体系结构和久经考验的品质,产品的功能之复杂和详尽往往能令初次接触的人膛目,但其高昂的价格也会使一般用户望而却步。3.2.3 开源数据交换平台研究情况数据交换平台的研究受到的业界的广泛关注和重视,经过近几年的发展,出现了许多开源的数据交换技术,如BIE(商业集成引擎)一个完全基于Java跨平台的企业应用集成(EAI)服务器;XmlBlaster 基于Java的MOM (Message oriented Middleware);Mule一个企业服务
19、总线(ESB)消息框架;WSO2 ESB一套轻量级以XML和Web service为核心的ESB(Enterprise Service Bus)等等。这些系统以EAI或ESB为理念,提供应用系统整合和数据交换功能。但是这些系统基本上不能为一般用户提供易操作性和稳定性的使用特性,需经过专业的机构和技术人员进行较深入的研究和二次开发才能有效地得到应用。除了以前的ESB开源产品之外,也有许多厂商研发的轻量级的开源产品,如Kettle、JasperETL、Jitterbit等,这些产品一般都用Java编写,易维护易扩展,体积较小,数据抽取高效稳定。其中Kettle以其强健全面的功能和灵活直观的界面在众
20、多产品中占据翘楚。3.2.4 国内数据交换平台研究和应用情况国内数据交换平台近几年在研究和应用方面有了良好的发展。在研究方面,主要基于通用数据库技术和开源ESB技术,近年来基于SOA和ESB理念和技术的研究越来越多和深入。在应用方面,主要是针对行业的系统,如电子政务数据交换、企业应用集成(EAI)、教育数据交换等,这些系统的行业性强,通用性较低。在产品方面,目前国内尚欠缺比较成型的ETL产品,针对这方面工具软件的研发也相对落后,不过还是有一些功能上近似的替代品被广泛应用,在项目中也为其做了尝试,如金蝶的ESB(也是基于开源的ESB)、东方通公司的中间件系列产品(Tonglniegrator、T
21、ongL、KQ等),与提供的服务相配合可以实现数据的企业级集成交换;还有新晨的整合化传输工具XXCJ,只能满足部分要求,对于数据交换安全、大数据量、实时数据等不能实现交换。但使用中需要专业人员和大量二次开发,未能成为主流和形成规范。因为中文的原因,国内产品在使用上,操作复杂性、界面友好性等方面还存在一些差距。3.3 项目研究的主要内容项目的主要研究内容如下:1.数据交换目录与数据元管理。平台可依据数据元的国际、国家标准以及应用行业(如政务、教育、企业等)自身的信息标准,规范化地定义和描述数据元、数据字典、数据交互目录。2.数据交换服务管理。基于SOA理念定义和描述所需的数据交换服务清单,包括服
22、务清单管理、服务对象(提供者、请求者)管理、服务注册管理、服务测试管理、服务发布管理、数据源管理等。3.数据适配器技术。数据适配器连接并访问数据交换中涉及到的可能的数据对象(数据源/目)。平台支持适配器定义、适配器安装与卸除、适配器测试、适配器配置等。主要数据适配器将各种数据库、电子表格(EXEL)、数据文件、应用服务(WEB SERVICE)、数据目录(LDAP)等。适配器根据需要可扩充。4.数据交换管理技术。定义和配置数据交换的一个或数个示例。主要包括交换发布与订阅配置管理、交换机构管理、触发器管理、数据发布管理、数据订阅管理等。5.数据交换调度技术。通过任务排程管理对数据交换操作提供调度
23、管理。主要包括排成清单管理(新增、删除、编辑等)、排程属性管理(发起方式、时间、频度、批量规模等)、排程监控(日志、分析等)。6.管道式交换过程处理技术。提供交换过程中的管道式数据处理插件,主要包括数据抽取、格式转换、内容过滤、内容转换、安全加密等方面功能。7.实用的数据交换平台管理。实现对数据交换的状况和性能进行管理,主要包括用户管理、角色管理、授权管理、配置管理、备份恢复、服务统计、服务分析、日志监控等。8.轻量级体系架构。平台将基于开放、开源、主流的轻量级J2EE应用支持平台和开发工具,实现功能强、系统开销小、高效、易部署、易管理的轻量、通用的数据交换平台。 9.其他特殊交换技术。平台在
24、常规数据交换的基础上,还可支持超大数据(如超大文件、超大数据库等)、流数据(如实时视频流)的数据交换,满足特殊的数据交换需求。3.4 项目的技术方案3.4.1 数据交换平台总体设计3.4.1.1 数据交换平台的功能结构根据上述描述的数据交换作用与功能,我们将数据交换平台的功能结构设计成下图所示。在数据交换平台的上述架构中,“数据交换管理”子系统作为平台的管理核心,调动各子系统协同工作,共同完成是特定的数据交换服务。数据交换平台各功能模块的协同工作过程如下:(1) 数据交换子系统首先定义数据交换服务,按照SOA模式描述如交换机构、交换数据源、交换触发器等信息;(2) 数据交换适配器管理子系统根据
25、交换数据源实际情况,配置好源数据对象和目标数据对象的数据适配器,必要时可扩展所需的数据适配器;(3) 数据交换标准管理子系统根据描述的数据交换服务,定义交换源、目各方都一致性理解的数据元、数据字典,形成交换所需的数据目录;(4) 数据交换系统管理子系统对执行交换的用户权限进行配置管理,描述用户和用户组帐户属性,定于角色及操作权利,对用户进行授权。(5) 数据交换管道处理子系统根据交换源数据对象和目标数据对象的数据项的情况以及交换过程用户对数据的各种处理要求,以管道插件方式配置对数据进行处理,如数据项合并、数据项拆分、数据变换、内容过滤、安全加密等;(6) 数据交换任务调度子系统根据用户的交换执
26、行模式要求,配置数据交换服务的排程参数,如发起方式、时间、频度、批量规模等;(7) 数据交换子系统根据预先描述和配置好的数据交换任务,自动执行数据交换操作。3.4.1.2 数据交换平台的系统架构在数据交换平台的整体架构设计中,将整个平台划分为轻量ESB体系结构、数据交换引擎、组织结构及权限配置接口、可视化数据交换流程定义工具、数据适配器接口、监控管理接口、应用服务接口。数据交换平台的系统架构如下图所示:轻量级ESB体系结构采用目前流行的、轻量的、开源的ESB,实现服务的注册、配置、管理。服务运行时环境提供服务(和服务组件)的部署、运行和管理能力,支持服务编程模型,保证系统的安全和性能等质量要素
27、;服务总线提供服务中介的能力,使得服务使用者能够以技术透明和位置透明的方式来访问服务;服务注册库支持存储和访问服务的描述信息,是实现服务中介、管理服务的重要基础;而服务组装引擎,则将服务组装为服务流程,完成一个业务过程;服务网关用于在不同服务计算环境的边界进行服务翻译,比如安全。数据交换引擎是整个数据交换平台中核心,它的性能直接影响到数据交换平台的性能。因此,采用目前最轻量的、性能最高的开源的数据交换工具Kettle,在Kettle基础中,封装成各种不同的数据交换服务组件,注册到ESB服务池中,将通过数据交换引擎,解释数据交换配置工具定义的交换流程,并实例化数据交换流程,运行数据交换流程。对于
28、多种数据交换平台相互协调交换时,可以配置相应的交换路由,在交换路由中配置远程数据交换平台的地址、流程名称、节点名称等,实现不同数据交换平台之间的相应协调工作。对于定义调度的数据交换流程,由数据交换引擎提供的定义调度功能,实现数据交换流程的被起动;在被动启动数据交换流程时,由流程调用本身的服务组件,起动交换过程;在交换过程中,调用数据交换平台提供的服务组件时,可以直接调用本身的组件,提高引擎响应速度;对于外部接入的应用服务组件,通过ESB发布的数据服务接口,调用应用服务组件提供的服务,实现数据交换的被动触发;对于由应用服务组件触发的数据交换流程,应用服务组件通过调用ESB提供的服务接口,以及数据
29、交换引擎发布的服务接口,由ESB调用相应的数据交换流程,实现数据主动的实现。组织结构及权限配置接口是实现与其它应用系统的权限统一管理。在数据交换引擎中,可以对不同的数据交换流程,授予不同用户的权限,只有被授权的用户,才可以起动流程的运行;或者是数据发布接口,只有被授权的用户才可以访问被授权的服务接口。可视化数据交换流程配置工具是配置数据交换流程的工具,通过易用的、可视化的工具,为用户提供十分便捷的配置手段,简化数据交换流程的管理。数据适配器接口可以直接配置各种不同类型的数据源或目标数据源。当数据交换过程中,需要访问外部数据时,可以通过数据适配器接口,直接加载或输出数据。对于提供数据访问服务接口
30、的应用系统,可以通过配置应用服务接口,从接口从读取所需要的数据或输出数据到应用服务接口中。数据交换目录接口是提供数据交换过程中涉及的数据交换元数据。这些元数据结构可以通过外部系统提供满足条件的目录结构,也可以直接通过数据交换平台提供的目录管理功能,配置数据交换目录数据。在数据交换目录结构中,对于每一个数据源与目标之间的相应关系,都可以通过数据交换目录结构进行定义。应用服务接口是提供各种应用系统接入数据交换平台的接入方式,它通过注册应用服务的方式将各种应用系统集成到数据交换平台中,并通过数据交换配置工具,将应用服务接口做为一个节点引入到数据交换流程中,实现各种应用系统之间的数据交换。3.4.1.
31、3 数据交换平台的应用部署模式数据交换平台的一般部署模式如下图所示。从图中可以看出,采用数据交换平台,遵循一致的数据交换标准,通过网络可实现不同应用之间、不同机构之间以及分支与中心之间的数据交换。根据应用的范围的不同,数据交换平台可有以下几种基本的部署模式:(1) 内部业务系统数据交换部署这种模式主要适应于同一个机构(政府部门、学校、企业等)内部的不同应用系统之间的数据交换,解决信息孤岛问题,实现数据的治理。由于各种原因,一个机构内部可能先后采购了多种应用系统,这些系统可能来源不同、开发平台不同、数据库系统不同、工作模式不同,使得系统之间数据交换非常困难,造成数据重复建设、数据冗余、数据不一致
32、等问题。采用数据交换平台,可实现机构内各应用系统的数据整合,解决信息孤岛问题。(2) 对等系统数据交换部署这种模式主要适应于具有业务联系的两个或多个对等机构之间的应用系统之间的数据交换,实现关键业务数据的关联,提高关联业务处理的效率。各机构的系统一般都作用不同、功能不同、开发平台不同、数据库系统不同,系统之间数据交换一般都需要接口系统来解决。这类数据交换的例子有电子商务(E-Commerce)、电子数据交换(EDI)、文件交换、资源共享等。(3) 上下级系统数据交换部署这种模式主要适应于具有数据关联的上、下级机构之间的数据交换,实现预定的工作业务数据的上报或下传,提高工作效率。上下级之间的通常
33、都是各自先后建设,系统开发平台、数据库系统不同、信息格式不同,数据交换平台可作为其中的有效桥梁。这类数据交换的例子有统计资料的上报、文件的下发等。3.4.2 规范化的交换目录与数据元管理数据元指通过定义、标识、表示以及允许值等一系列属性描述的数据单元。数据元由数据元概念和表示两部分组成。当一个表示被联合到一个数据元概念时,就能够产生数据元。数据元表示规范是通过描述数据元的一系列属性来实现的。这些属性实际上是数据元的元数据。针对数据元的查询、维护及基于数据元的信息抽取、交换的需要设计了以下几个方面的基本属性:标识类属性、表示类属性、关系类属性、管理类属性和附加类属性。数据元的作用表现在以下几个方
34、面:(1) 统一数据的名称和定义;(2) 统一数据的格式;(3) 有利于实现系统之间的数据交换;(4) 便于数据交换目录的建立。规范交换目录和数据元管理对于构建数据交换平台具有重要的意义,它使得在信息化建设中,规范和统一数据采集与应用标准;构筑数据共享的基础,为不同系统多种模式的数据存取和数据共享提供数据转换格式和编程接口。数据元设计的根本目的是便于进行交互数据的管理,而交互数据是从业务流程中得来的。因此,数据元的提取离不开对相应领域业务流程的分析。在对业务流程分析的基础上,实现信息的建模和数据元的提取。为了实现各个行业的数据交换目录,对数据交换目录采取元数据的描述方式,根据不同行业的特色及数
35、据交换要求,配置不同的元数据内容;从而在不改变数据交换平台系统的情况下,使用数据交换平台适于各种不同行业的数据交换需要。3.4.3 基于SOA的企业服务总线在本项目平台建设中将采用SOA架构。SOA可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。n SOA架构模型在基于SOA架构的系统中,具体应用程序的功能是由一些松耦合并且具有统一接口定义方式的组件(也就是Web Service)组合构建起来的。SOA架构模型如下图所示:SOA架构模型图n SOA计算环境在面向服务的计算环境中,系
36、统可以是高度分布、异构的。它一般包括服务运行时环境(Service Runtime)、服务总线(Service Integration Infrastructure)、服务网关(Service Gateway)、服务注册库(Service Registry)和服务组装引擎(Service Choreography Engine)等,如下图所示。SOA计算环境的组成要素服务运行时环境提供服务(和服务组件)的部署、运行和管理能力,支持服务编程模型,保证系统的安全和性能等质量要素;服务总线提供服务中介的能力,使得服务使用者能够以技术透明和位置透明的方式来访问服务;服务注册库支持存储和访问服务的描述信
37、息,是实现服务中介、管理服务的重要基础;而服务组装引擎,则将服务组装为服务流程,完成一个业务过程;服务网关用于在不同服务计算环境的边界进行服务翻译,比如安全。n SOA协议栈面向服务的计算环境是开放的、标准的,由如图所示的技术标准协议栈所定义和支持。例如,Transport层的HTTP协议,Service Description层的WSDL,Business Process层的WS-CDL等,与Policy相关的WS-Policy。SOA计算环境的标准协议栈3.4.4 丰富的可拓展的数据适配器技术数据适配器连接并访问数据交换中涉及到的可能的数据对象(数据源/目)。平台支持适配器定义、适配器安装
38、与卸除、适配器测试、适配器配置等。数据交换平台支持广泛的数据库系统,包括主流的关系型数据库、非主流的数据库以及文件系统,支持Informix、Sybase、Oracle、MS SQL Server、Mysql、ODBC、OLEDB、JDBC、Native 数据源;Web Services、XML、消息队列数据源。同时,在进行数据交换时对数据进行综合治理,解决数据匹配、冗余、不一致等问题。在数据适配器接口中,提供上述各种数据源的访问服务,并注册到ESB服务池中;在数据交换配置工具中,可以选择不同数据源的访问服务,实现多数据源的接入管理。共享数据交换平台提供数据库入站适配器,支持主流的关系型数据库
39、的主流版本(如Informix、Sybase、Oracle、MS SQL Server、Mysql),并且能够支持初始数据同步和增量数据同步两种数据同步模式。针对部门通过暴露Web服务的方式提供数据的场景,数据交换平台提供Web服务适配器,能够通过调用Web服务的方式,获取数据。针对部门通过介质报备数据的场景,数据交换平台提供Excel适配器、文本文件适配器、Access适配器、Visual Fox Pro适配器等多种文件适配器,完成数据的采集。也包括ODBC、OLEDB、JDBC、Native 数据源;Web Services、XML、消息队列数据源。除了上述的可用适配器之外,对于特殊的数据
40、源,也可以通过配置文件,对适配器根据需要可扩充;在配置文件中,可以定义数据源对应于数据交换目录的结构。3.4.5 组织机构及权限配置接口数据交换平台不是单独的应用系统,在各种应用环境中,有时必须提供数据交换流程、数据订阅接口访问、数据交换平台的各种功能使用的权限配置。虽然这些功能可以在数据交换平台中,实现相应功能;但对于数据交换平台具体的应用环境,数据交换平台不是单独为用户服务,它只是为用户提供数据交换服务、应用整合服务功能,并不具体完整的业务功能,也没有独立的用户管理功能。因此,数据交换平台的需要外部的应用系统提供相应的用户权限。在组织机构及权限配置接口功能中,主要对外部系统提供各种数据交换
41、流程列表、监控管理等功能列表、数据发布服务列表等,方便用户对这些列表进行访问授权。在数据交换平台运行过程中,涉及权限检测点时,通过访问配置接口,判断当前用户是否有权限访问相关的业务功能。3.4.6 可视化数据交换配置工具数据交换配置包括进行数据交换的相关业务系统的配置及业务系统进行数据交换的表、字段的配置,数据交换平台具有友好的配置界面、完善的交换过程监控和权限控制机制。在数据交换配置过程中,采用可视化、拖拉的方式进行整个数据交换过程的流程配置。在配置过程中,可以配置数据的表输入、字段映射、字段拆分、字段合并、值映射、计算、表输出等。可以非常便捷的根据业务需求情况,调整数据采集、处理、共享等过
42、程。3.4.7 一体化的监控管理接口数据交换平台提供了全套,完整地集系统管理、适配部署、MQ配置、流程定义、日志统计于一体的配置部署工具,并且提供了非常友好的可视化界面,更多的以业务的视角展现数据集成中所需要解决的问题和难点。同时,数据交换平台还提供了基于浏览器的监控和管理工具,能够做到运行期对整体平台的实时监控。管理工具还提供了对数据交换平台对整个网络的实时监控功能,可以对数据交换平台网络上的任意一个节点运行情况进行实时监控,包括流程实例的运行状态,数据状态等等,真正做到对数据交换平台的运行状况了然于胸,尽在掌握。数据交换平台,拥有完善的日志管理机制,可进行多维度的日志发现、跟踪与分析。同时
43、,数据交换平台还提供了基于浏览器的监控和管理工具,能够做到运行期对整体平台的实时监控;实现对数据交换的状况和性能进行管理,主要包括用户管理、角色管理、授权管理、配置管理、备份恢复、服务统计、服务分析、日志监控等。配置管理是对数据交换平台相关参数进行管理。备份恢复对数据交换配置中的相关参数进行维护,同时对数据进行备份。备份包括业务流程、业务数据等备份。同时,如果服务器出现异常时,可以通过系统的备份文件,从备份数据中,还原共享数据中心的内容。服务统计、服务分析、日志监控、邮件发送等功能,必须有远距离的服务对象的使用情况,并对使用情况进行分析,确定各种数据交换流程访问情况。在交换日志进行分析的基础中
44、,分析用户访问管理功能。3.4.8 可配置的应用服务接口通过ESB提供的服务注册管理接口,将各个应用系统提供的服务接口注册到ESB服务池中;同时,数据交换平台的可视化配置工具,读取已注册到服务池中的服务对象,根据业务数据整合的需要,配置到相应的数据交换节点中,实现各个应用系统的服务接口可灵活配置功能。这些配置到服务池中的服务对象既可以是被调用的服务接口,也可以是主动申请服务的对象,从而实现数据交换平台的被动与主动的数据交换服务功能。3.4.9 轻量级、高性能的数据交换引擎在数据交换平台中,最核心的是数据交换引擎,为数据交换平台提供高性能的数据交换作用。在各个单位或部门多种异构的业务应用系统的环
45、境下,通过数据交换平台的数据交换引擎,协调各种数据交换组件的功能,实现同构、异构数据之间的交换与集成。同种数据交换引擎由一个或多个兼容的工作流机组成,为数据交换流过程提供运行时期的执行环境。在多个数据交换引擎间组织过程执行的机制、协议和转换格式,可以是产品所特有,并不一定是标准化的。异种数据交换执行服务器是由两个或者多个同种的执行服务器组成,并在一致性级别上遵守公共的协同工作标准。因此也需要定义一系列的一致性级别,来支持不断增加的公共功能级别。一致性级别中应该包括:n 在异种执行服务器间要有公共的命名方案n 异种执行服务器都要,支持公共的过程定义对象和属性n 支持数据交换引擎相关数据在异种执行
46、服务器间的传递n 支持过程、子过程或者活动在异种数据交换引擎间的传递n 支持公共的管理和监视功能数据交换引擎执行服务可以看作是一个状态变迁机器,过程或者活动的实例在响应外部事件、工作流机负责的控制判断后,其状态发生改变。下图描述了过程实例的基本状态变迁方案:在上图中,发生状态转移(用箭头表示)来响应WAPI的命令;过程定义中的转移条件满足,也可能发生状态转移。Initiated(初始化) 过程实例被创建,包括与过程状态相关的日期、数据交换引擎相关数据,但是过程还没有满足条件,不能执行。Running(运行) 过程实例已经执行,过程中的活动如果条件满足就可以执行。Active(激活) 过程中的一
47、个或者多个活动已经被执行。Suspended(挂起) 过程实例被静止,并且过程中的活动不能执行,直到过程返回到running状态。Completed(结束) 过程实例满足结束条件;所有的完成后操作都将被执行(例如记录日志、或者统计信息),并且销毁过程实例。Terminated(终止) 过程实例在正常结束前被停止;所有的完成后操作都将被执行(例如记录错误信息、或者恢复数据),并且销毁过程实例。活动是不能被中断的,例如数据交换引擎一旦开始了一个活动,就不能挂起或者终止这个活动。这就意味着,只有在所有运行中的活动结束后,并且过程返回到running状态,才能对过程执行挂起、重启、终止等命令。另外,可能需要把几个活动放在一起作为“原子单元”,这些原子单元要执行就全部被执行完,如果中途出现异常则返回到开始点,重新执行。活动实例的基本状态和转移如下图:一个活动的基本状态有:Inactive 过程实例中的活动已经被创建,但是还没有激活(例如,活动的进入条件没有满足),并且没有任务需要处理。Active 创建好的任务,分配这个活动来处理。Suspended 活动实例被静止,并直到活动返回到Inactive状态,才能为其分配任务。Completed 活动实例执行完成。3.
链接地址:https://www.31ppt.com/p-1854803.html