SOA的最后一英里(二)

当前位置:数据服务 > 数据服务文档   发表日期:2010年8月9日

SOA的实际技术架构

上面我们已经提到,现代的企业所要做的就是使用最新的消息减少产品的上市时间,并加快差异化竞争优势的实现时间。然而,开发并维护能够支持这种能力架构则是企业取得业务敏捷性的关键。

作为迈向敏捷的第一步,企业需要在其任务关键的部门中(比如金融、供应链、客户管理)利用既有的和新的应用、业务过程和数据。在许多企业中,有远超过50%的IT预算被用来构建并维护这些系统之间的集成点。CIO和IT经理们经常会面对以下困难:

·IT开发、部署和维护的高成本

·IT架构在满足新业务需求方面的灵活性上的匮乏

·企业业务数据的不一致、不准确

集成分散的应用是IT和业务所面临的一个巨大难题,也会对业务造成显著的影响。业务敏捷性对客户、供应商、产品和合作伙伴的依赖性越来越高--不依靠整合已经无法实现。

因此,SOA成为发展新一代灵活的、成本节省型的IT方案的主要技术。SOA提供了一种非常灵活的方式可以实现以下引人注目的业务优势:

·应用与业务过程集成的灵活性

·重用业务逻辑、当前的IT资产和技术

·减少供应商的束缚,以及相关的项目复杂性

SOA为解决企业中应用整合的复杂性提供了一个优秀的方案。如图1所示,当前的SOA包括一个使用诸如EAI、BPM和ESB等技术处理应用集成的有效的抽象层。

目前SOA的架构
图1 目前SOA的架构

然而,要有效地在企业中实现敏捷性,底层的IT架构也必须能够支持适时、整体、准确地提供分散于整个企业的数据。SOA执行者们很快认识到他们的SOA平台提供商无法解决以下数据相关的难题:

·分散于企业内部和外部的异质的数据筒仓

·不一致的、持续变化的数据结构

·数据质量低下,并且通常无法进行评估或监控

·缺乏与关键信息资产的适应性或可视性(唯一视图)

如果将信息作为业务敏捷的关键,应用与业务过程层就能在需要的时候一致地访问整体的、准确的数据,不管数据寄存在什么地方、所需求的数据格式是什么。

因此,如果能够直接着手并重视及时的数据集成,作为业务敏捷推动器的SOA就能带来可观的回报。

以SOA服务的形式实现数据需求

如果以服务的形式互相连通的应用和业务过程中的数据缺乏准确性和一致性,或者无法适时提供数据,那么它们对于实现灵活性就一点价值也没有。如果说在单应用中阻塞的数据已经够糟糕了,那么不妨想像一下,通过应用和业务过程集成技术使筒仓消失后,来自各个应用的数据混合在一起的话会带来什么样的灾难。

如果没有一种补充性的、基于标准的、灵活的技术可以将整体的、准确的、并且及时的数据以服务的形式实现,那么终端用户就可能面临以下问题:

·SOA执行者们很快认识到他们的SOA平台提供商无法解决以下数据相关的难题:

·不同的数据量和数据流通延迟

·数据在语义和语法上的不一致性

·数据质量低下,并且通常无法进行评估或监控

·缺乏与关键信息资产的适应性或可视性(唯一视图)

·分散于企业内部和外部的异质的数据筒仓

·各项目之间的数据集成逻辑和技术具有很小的重用性,或者根本没有

因此底层的IT架构会给缺乏适时性数据集成策略的企业带来相当大的风险,而不是与数据毫无干系。而通过消除应用之间的障碍并使用灵活、可重用的应用层或业务服务实现业务流程编排,可以为企业提供一个可扩展的框架。如果能够通过整体的、准确的和及时的信息增强SOA所固有的灵活性、响应性和重用性,那么业务敏捷必然也是可以实现的。

我们需要的是一种基于可以提供标准的数据抽象层的成熟的数据集成平台上的可扩展的数据服务技术,并以服务的形式实现整体的、准确的、和及时的数据(见图2)。数据服务是一个模块化的、可重用的、定义良好的业务相关的服务,通过它可以(透过企业防火墙)在整个企业内访问、集成、并及时递交企业数据。然而,与应用层或业务服务不同,数据服务更为粒度化、目标性更强,它与数据源形成松耦合的关系,是以数据为中心的、面向目标的。

数据服务技术作为SOA的数据抽象层
图2 数据服务技术作为SOA的数据抽象层

数据服务技术还应该能够对基础数据服务进行编排或排序以实现灵活的组合,并在各项目之间重用复杂的数据集成任务。如图3所示,在整个数据集成周期中,基础数据服务必须能够支持复杂的数据集成操作比如数据访问、剖析、整理、转换和传送的各种不同组合。

整个数据集成周期中的复杂数据服务
图3 整个数据集成周期中的复杂数据服务

在理想的情况下,一种数据服务技术必须满足以下复杂的功能:

·可以广泛地访问企业中各种数据源中的复杂数据

·可以简单快速地创建复杂的、可扩展的、并且可重用的数据服务

·对基础数据服务进行编排以支持整个数据集成周期

·可以通过多种协议适时地为应用和服务过程提供数据

·对所有数据源中的数据预先或主动进行数据质量处理

·有数据血统工具可以支持变化管理和影响分析

·与既有IT架构的无缝集成

最后,考虑到性能和可扩展性是所有任务关键操作的核心,数据服务技术也应该具有高度的并行处理能力以及对大数据量的处理能力,因为这些都是这种环境下的典型需求。

集成支持中心是实现SOA数据集成的理想推动器

集成支持中心(ICC)是一个以快速、可重复、能够有效利用成本地部署可以满足企业目标的数据集成项目的人力、技术、策略、最佳实践和过程的结合体。各企业已经发现,ICC的质量与他们对动态变化的业务模型、激烈的竞争和需求不断增长的客户的迅速反应能力有着直接的关系。简单来说,ICC就是负责递交可靠的数据的机构(与业务同步)。

数据服务技术依据常用的技术标准对开发过程进行标准化以实现更大的重用性,支持共享服务环境,支持集中的服务环境,支持对数据服务和数据架构的治理,从而定义、语义、和SLA都有对应的团队进行维护。因此数据服务技术推动了ICC的建立与管理。

而这样,以数据服务技术为基础建立的ICC就可以完美地实现数据集成,因为它提供了在整个企业中访问和递交整体的、准确的和及时的数据所需的可调整的架构和技术(见图4)。它还为交叉团队提供了所需的协作工具,使他们能够使用一致的技术,提高了对不断变化的业务需求的响应能力。最后,它还提供了一个安全、可扩展的、灵敏的平台,保证了对任务关键信息的访问,进而可以对企业中的许多项目提供支持。

ICC是在SOA中实现数据集成的理想推动器
图4 ICC是在SOA中实现数据集成的理想推动器

正如文中所述,一种成熟的企业级数据服务技术可以保证业务关键信息的整体性、准确性、同步性以及可用性,从而完成SOA这最后一英里的旅程。

SOA的最后一英里(一)

作者:IT168 袁发明编译

站点新闻
数据服务文档
互联网资讯