在IT基础设施中将各种应用软件的数据集成起来是一回事,因为相关方法和实践都经过检验,证明是可行的。但是,在服务导向架构(SOA)上实现数据集成则是另一回事,那可是个新挑战。
“SOA的引入,使数据与应用之间的差别日渐模糊。”SOA市场研究机构ZapThink公司的罗恩·施麦尔泽尔(Ron Schmelzer)总结道。当一套应用软件作为独立的服务,执行某些功能,其运行结果被传递到其他应用软件时,这些结果看起来很像数据。与此类似,对某项服务的查询会启动数据库中的进程,产生的结果看起来很像应用逻辑的导出结果。总之,在服务中,数据与应用逻辑已不再有明显的区别。
重要的是这些结果是否能与下一个操作进行集成。数据的集成目前有几种不同的方式。iWay公司、Software AG公司等企业的产品提供了一些源自于常规企业应用集成的新途径。比如,iWay就拥有一个包括300个适配器(Adapter)的程序库,这些适配器可将应用软件之间或应用软件与数据源之间连接起来。将这些适配器与iWay的Service Manager集成起来,便可解决如何将数据传输至其目的地的问题,从而将不同服务上的数据连接在一起。
方法之一
香水和个人护理产品厂商科蒂公司(Coty)花了半年时间发现,iWay产品恰是它集成联合利华公司(Unilever)的化妆品业务所需要的。它于2005年末收购了后者。
科蒂的首席财务官(CFO)迈克尔·费绍夫(Michael Fishoff)要求首席信息官(CIO)戴夫·拜里(Dave Berry),将两家公司面向客户的数据集成到一起,项目截止到去年6月30日。如果届时无法达成目标,两家公司原有的客户利益就势必受到影响,而且该公司还不得不继续维持两支销售团队、两条供应链、以及两套软件基础设施的现状。
在收购联合利华后不久,拜里就听说,美国联邦百货集团(Federated Department Stores)等大客户纷纷抱怨,两家公司合并后,他们的采购员得分别跟两家公司的销售代表洽谈,或者甚至要经过3个系统才能够拿下订单。
过去,联合利华旗下品牌克罗伊(Chloe)或者卡尔文·克莱恩(Calvin Klein)的香水订单得通过JD Edwards系统才能送达法国的里尔。而科蒂旗下热卖的品牌席琳·迪翁(Celine Dion)或者詹尼弗·洛佩兹(Jennifer Lopez)香水必须通过该公司位于德国卡塞尔的其自主研发的仓库管理系统才能下订单。给其他产品下订单也得通过科蒂位于美国北卡罗莱纳州分销中心中的Oracle销售系统才行。“如果我们自己编写代码,根本无法在半年内完成这几个系统的集成工作。”
而将JD Edwards系统与Oracle应用软件或者将Oracle软件与SAP系统连接起来,那正是iWay的连接器和适配器所要做的。拜里认识到,他需要将某些流程合而为一,正是这些流程导致客户从他的公司采购产品时会收到两张发票。
埃森哲公司(Accenture)的业务流程顾问接受了此项任务。埃森哲的业务分析师首先利用iWay的Service Manager产品来弄清楚科蒂不同的订单录入系统之间的差别,然后进行数据的转换过程。
Service Manager软件中有对JD Edwards和SAP系统有一个图形影射功能,每当业务分析师在这个图形影射上绘制业务流程图师,该软件就会自动在订单录入系统之间完成业务流程线条的数据的自动转换。直到将科蒂和联合利华的订单录入系统的输出结果整合起来,生成单一的发票时,这两个订单录入系统才能协同工作。
现任科蒂北美信息管理副总裁加里·盖兰特(Gary Gallant)负责这一艰难的系统集成项目,此前他曾担任联合利华首席IT经理。盖兰特发现,某一天的订单在发送到iWay系统中后,再也没有出现在公司的分销中心。原来这些订单被赋予了错误的格式,因而无法被转化为正确的目标格式,但是iWay并没有向任何人通报这一点。
“这简直是大海捞针,我们需要提高系统的透明度。”盖兰特回忆说。他最终找到了解决办法,即当订单被挂起在“重试”队列中时,系统会给管理员发送消息。
拜里用这个办法识别那些面向客户的服务,再将这些服务隔离开来,然后用iWay在这些服务间实现数据转换。最后,在6个月的期限结束时,客户使用的已经是完全集成的系统了。
方法之二
并非每个人都热衷于采用iWay系统来集成来自不同服务的数据。“我一直对此心存疑虑。” ZapThink的施麦尔泽尔表示,因为它与以往的应用软件集成非常相近,这种方式需要单独为每组应用软件建立连接,而且不够灵活。
服务需要被重新构建,以使其产生的数据可用于不同的应用软件,而iWay的Service Manager仅可以完成大部分工作,而非全部。公司还要在不改变服务界面的情况下,改变表现数据的方式。但是,iWay系统通常要求对每个数据表现都提供一个界面,而无法生成可被所有数据表现轻易采用的数据。
还有一种集成Web服务数据的办法,那就是利用开源和专有产品。开源数据集成工具Jitterbit可以接收应用软件信息,将之转换为XML格式,再在Web上绘制出来并递送到目标系统。它有赖于Web标准,并且需要具备在不同系统间转换数据的能力。Apatar公司和Talend公司也拥有类似的开源产品。DataDirect公司和 MetaMatrix公司则拥有专有系统,而红帽公司(Red Hat)现正准备收购MetaMatrix,后者的产品也将成为开源系统JBoss的组成部分。
计算机辅助设计和工程软件厂商欧特克公司(AutoDesk)目前在对开源Apatar软件进行评估。欧特克还以软件作为服务(SaaS)的形式提供协作施工项目管理,通过门户网站集成数据,以供参与同一项目的承包商使用。重要的施工项目可以包括40家甚至更多的承包商。
欧特克在自己的产品中将Apatar软件作为集成代理,公司协作项目管理部门技术服务经理杰森·普拉特(Jason Pratt)介绍说。Apatar能在系统间转换数据,并利用Web服务将数据输出给业务合作伙伴。它能在不同的系统间执行提取、转换、以及上载等功能,以使两家彼此尚未建立P2P连接的公司能够共享数据。而且,与定制的P2P连接不同,Apatar连接代码依赖于Web标准,因此无需测试即可确保能够有效使用,Apatar创始人兼首席执行官(CEO)雷纳特·卡桑辛(Renat Khasanshyn)补充道。
利用欧特克服务提供的数据转换,一家承包商的JD Edwards会计系统可将数据输出到另一家承包商的调度系统,这样施工项目的不同方面就可以按时执行并完成了。
Apatar系统“为所有数据提供了管道,从一个系统通向另一个系统的管道,就像乐高(Legos)玩具一样。”普拉特概括道。在无需构建中间件的前提下,这种办法可以提升灵活性,确实很了不起。
现在该轮到你来选择了。iWay和其他厂商能提供通向服务世界的合适的P2P连接;而开源产品现在已能在更高的水平上将源自不同服务的数据集成起来。不管你选择哪个方法,距离成功部署SOA,你又向前跨了一步。