技术开发 频道

数据服务:连接SOA与元数据管理的桥梁

【IT168 专稿】

    最近的经济危机使投资收益最大化成为基本的战略准则。IT资产的投资也不例外。面向服务架构(SOA)由于其敏捷与重用性,能够从当前的IT资产中快速开发出具有高商业价值的应用,因此在其中扮演着极其重要的角色。

    然而,在任何SOA应用发挥这些IT资产的商业价值之前,企业必须首先能够了解并自由支配这些资产,而这正是元数据管理的基本原则。

    企业必须在管理元数据所消耗的资源及在SOA中利用元数据所消耗的资源之间找到一个平衡点。要达到这一目的,企业就必须解决以下问题:

    * 重点应该放在哪里?

    * 企业如何实现最快地获得最大商业价值?

    * 能否找到一个非常好的点,使元数据管理与SOA能一致地提高IT与业务的收益?

    管理元数据——比以往任何时候更为重要

    元数据的重要性不必多说。并且,随着元数据从被动式信息仓储发展到成为自动化开发的关键内容,其重要性正与日俱增。商业智能(BI)和数据仓储(DW)就是利用面向数据的元数据的成功应用;业务流程管理(BPM)利用的是面向过程的元数据;IT管理利用的是面向IT资产的元数据。最近,基于SOA的新开发和遗留资产合并也产生了新的元数据需求。由于元数据的这种爆炸式增长,企业也要花费越来越多的资源了解、分类并管理元数据。

    今天的各种元数据管理应用和技术已经发生了相当大的变化。这主要是由三个因素造成的。第一个因素是上面提到的各种元数据类型。比如,数据仓库中用于定义数据提取、转换和加载(ETL)脚本的元数据,和用于定义、管理复杂订单-收款业务流程中越区切换的元数据有着很大的不同。各种不同的用途不仅影响着数据的类型和所管理的属性,还影响着变更的频率和变更所造成的影响。

    第二个因素是IT企业固有的分工制度。不同的团队分别进行不同种类的工作,比如B2B、后台应用、BI等。另外,不同的团队也工作在不同的应用套件层上:比如数据库、工作流、报表等。结果就是,各个团队主只了解其工作相关的元数据,而对其他用户的元数据却了解甚少。

    第三个因素是软件开发商式的元数据管理。由于最近几年来元数据重要性的提升,应用与工具供应商也在其核心产品中添加了元数据扩展,并且随之诞生了许多元数据管理的专业厂家。这些厂家各自以独特的角度解决元数据管理问题,产生许多截然不同的元数据管理工具,最终造成一系列新的元数据集成问题。

    数据服务——管理与利用元数据的非常好的点

    由于元数据类型繁多,用户和工具也多种多样,很容易造成元数据管理上的困难。不过,重要的一点是不能走上歧路。企业要有选择地进行管理,把重点放在具有最高收益的IT资产上,使用能够最快实现回报的元数据管理方法。对于SOA来说,把重点放在数据资料上通常意味着能够获得非常好的、最迅速的回报。

    为什么是数据?首先,数据通常是SOA开发项目的最大瓶颈。大多数新应用是以当前系统的数据为基础。这种数据复杂、多样化并且涉及整个企业。比如,一个新的SOA客户服务应用可能包括来自打包应用(比如SAP)的账务数据、数据仓储的历史交易数据、XML格式和HTTP文件形式的门户服务数据等等。各种来源都有自己的访问机制、语法、安全等——所有这些都会拖慢开发的进度。

    根据许多分析师的经验,那些与虚拟化、提取、组合和传输数据有关的服务(通常称为数据服务)是SOA开发中最耗费精力的一部分。要保证在企业SOA中实现这些服务的互通性和重用性,唯一途径就是良好的元数据管理。

    元数据管理就是管理与数据有关的数据。现在,面向模式的建模工具不但简单易用,还能有效开发的初步构建和后续升级。另外,20年前的那些简单的图表生成工具也已经发展成为先进的开发环境。现在,强大的连接器可以解决相当一部分跨系统的语法和转换问题,这在以前通常需要更细粒度的元数据和建模才能解决。

    通过现代的数据服务中间件,可以轻松地创建能够生成可用数据服务的数据模式,并被开发人员应用到SOA应用的开发项目中。通过从既有的元数据管理和建模工具中引入这些模式,并通过当前数据源生成新的模式,开发人员可以迅速地进入工作状态。他们还可以使用拖拽工具整合各种资源以增加数据的价值。此外,他们可以把复杂性抽象化,从而为消费者简化模式。性能通常是一个让人担忧的问题,而更好的数据服务中间件则可以优化队列,并提供一系列缓存技术。一旦模式完成,开发人员可以自动生成SQL视图和符合SOA标准的数据服务,这些都可以在多个开发项目中重用。如果将来底层资源发生变化,这种方式的松耦合特性也使得模型和受影响的数据服务的升级变得简单易行。

0
相关文章