以SOA服务的形式实现数据需求
如果以服务的形式互相连通的应用和业务过程中的数据缺乏准确性和一致性,或者无法适时提供数据,那么它们对于实现灵活性就一点价值也没有。如果说在单应用中阻塞的数据已经够糟糕了,那么不妨想像一下,通过应用和业务过程集成技术使筒仓消失后,来自各个应用的数据混合在一起的话会带来什么样的灾难。
如果没有一种补充性的、基于标准的、灵活的技术可以将整体的、准确的、并且及时的数据以服务的形式实现,那么终端用户就可能面临以下问题:
·SOA执行者们很快认识到他们的SOA平台提供商无法解决以下数据相关的难题:
·不同的数据量和数据流通延迟
·数据在语义和语法上的不一致性
·数据质量低下,并且通常无法进行评估或监控
·缺乏与关键信息资产的适应性或可视性(唯一视图)
·分散于企业内部和外部的异质的数据筒仓
·各项目之间的数据集成逻辑和技术具有很小的重用性,或者根本没有
因此底层的IT架构会给缺乏适时性数据集成策略的企业带来相当大的风险,而不是与数据毫无干系。而通过消除应用之间的障碍并使用灵活、可重用的应用层或业务服务实现业务流程编排,可以为企业提供一个可扩展的框架。如果能够通过整体的、准确的和及时的信息增强SOA所固有的灵活性、响应性和重用性,那么业务敏捷必然也是可以实现的。
我们需要的是一种基于可以提供标准的数据抽象层的成熟的数据集成平台上的可扩展的数据服务技术,并以服务的形式实现整体的、准确的、和及时的数据(见图2)。数据服务是一个模块化的、可重用的、定义良好的业务相关的服务,通过它可以(透过企业防火墙)在整个企业内访问、集成、并及时递交企业数据。然而,与应用层或业务服务不同,数据服务更为粒度化、目标性更强,它与数据源形成松耦合的关系,是以数据为中心的、面向目标的。
图2 数据服务技术作为SOA的数据抽象层
数据服务技术还应该能够对基础数据服务进行编排或排序以实现灵活的组合,并在各项目之间重用复杂的数据集成任务。如图3所示,在整个数据集成周期中,基础数据服务必须能够支持复杂的数据集成操作比如数据访问、剖析、整理、转换和传送的各种不同组合。
图3 整个数据集成周期中的复杂数据服务
在理想的情况下,一种数据服务技术必须满足以下复杂的功能:
·可以广泛地访问企业中各种数据源中的复杂数据
·可以简单快速地创建复杂的、可扩展的、并且可重用的数据服务
·对基础数据服务进行编排以支持整个数据集成周期
·可以通过多种协议适时地为应用和服务过程提供数据
·对所有数据源中的数据预先或主动进行数据质量处理
·有数据血统工具可以支持变化管理和影响分析
·与既有IT架构的无缝集成
最后,考虑到性能和可扩展性是所有任务关键操作的核心,数据服务技术也应该具有高度的并行处理能力以及对大数据量的处理能力,因为这些都是这种环境下的典型需求。
集成支持中心是实现SOA数据集成的理想推动器
集成支持中心(ICC)是一个以快速、可重复、能够有效利用成本地部署可以满足企业目标的数据集成项目的人力、技术、策略、非常好的实践和过程的结合体。各企业已经发现,ICC的质量与他们对动态变化的业务模型、激烈的竞争和需求不断增长的客户的迅速反应能力有着直接的关系。简单来说,ICC就是负责递交可靠的数据的机构(与业务同步)。
数据服务技术依据常用的技术标准对开发过程进行标准化以实现更大的重用性,支持共享服务环境,支持集中的服务环境,支持对数据服务和数据架构的治理,从而定义、语义、和SLA都有对应的团队进行维护。因此数据服务技术推动了ICC的建立与管理。
而这样,以数据服务技术为基础建立的ICC就可以完美地实现数据集成,因为它提供了在整个企业中访问和递交整体的、准确的和及时的数据所需的可调整的架构和技术(见图4)。它还为交叉团队提供了所需的协作工具,使他们能够使用一致的技术,提高了对不断变化的业务需求的响应能力。最后,它还提供了一个安全、可扩展的、灵敏的平台,保证了对任务关键信息的访问,进而可以对企业中的许多项目提供支持。
图4 ICC是在SOA中实现数据集成的理想推动器
正如文中所述,一种成熟的企业级数据服务技术可以保证业务关键信息的整体性、准确性、同步性以及可用性,从而完成SOA这最后一英里的旅程。