JBoss之SOA目标:解决数据服务难题

日期: 2008-02-25 作者:Brein Nally翻译:周姝嫣 来源:TechTarget中国 英文

在奥兰多JBoss世界(JBoss World Orlando)会议上,红帽公司中间件事业部副总裁Craig Muzilla接受了TechTarget的采访,谈到了数据服务、MetaMatrix和SOA治理等问题,深入探讨了一些常见的数据服务问题以及关于开源治理的未来目标。


  您从哪看出数据问题给用户带来了具体的难题?您所看到的那个问题或者说那些问题的本质是什么?



Craig Muzilla:哦,这是个大问题。有各种各样的问题。其中一个问题就是人们试图在组织中提出规范的数据格式或者标准。我给你举个例子。在一个组织机构中,对一名客户的定义是什么呢?可能会有二十个系统记录了同一名客户的部分记录。在银行,你可能拥有一个主系统,用以处理信用卡相关的信息。你可能用另一个系统来处理账户余额、支票账户、存款账户,然后是贷款数据库。这些数据库中的每一个可能对客户的定义都各不相同。因此,如果你看看数据库模式,一个数据库可能会说“用户 ID”,而另外的可能会说“用户名”,所以甚至你如何从数据中识别客户也不尽相同。


  MetaMatrix能帮助解决的一个主要问题是,帮助公司明确数据应该是什么样的,以及如何更加容易地在SOA环境中使用。它填补了关系数据与其如何在XML中或作为一项Web服务表征之间的鸿沟。我们看到的一个问题是在应用程序基础架构中创建更多的灵活性。一般说来,无论你是否采用JBoss应用程序服务器编写应用程序,你都需要在应用程序服务器和数据源之间设置不易被修改的代码。因此,也就存在一个数据库,可能是Oracle,也可能是IBM的DB2,但是基本上,你需要在很多方面将逻辑与数据库匹配。目前存在的数据问题之一就是如何才能解决那个问题,并获得更多的灵活性。所以,如果数据库发生变化,并不会破坏我的应用程序,也不会破坏我的服务。因此,将应用程序逻辑从数据源中分离,你可以在不破坏应用程序的前提下交换数据库和数据存储。这就是我们在数据服务中看到的一些问题。


  您认为这些问题有多常见?


  Muzilla:相当常见。尤其是上面提到的问题。特别在面向服务的环境中,普遍存在一个架构问题,因为面向服务架构的整体思想是我不需要事先了解我的服务如何构成,它只是给我提供一些东西。


  这就是您为什么看重开源吗?这样,连接性的问题就会变少了?


  Muzilla:嗯,开源未必是架构构建,更多的是传送构建,即我怎么才能使软件可用。那么,我怎么创建呢?以开源方式创建,我就不会束手束脚。我可以看到代码,可以控制代码,也可以自己编写代码。无论什么时候我需要迁移或者做一些不同的事,我都不必局限于任何供应商。这不仅仅是商业构建和授权构建,更是技术构建。


  架构问题属于您所看到的很盛行的问题吗?


  Muzilla:我想其中一些问题可能已经存在好多年了。向SOA发展加剧了这些问题。因此,如果你对你的数据没有一个很好的理解,你就无法向面向服务的架构转变。如果客户信息不属于某项总体服务的客户,你就没有规范的格式获取客户信息,这对你没有好处。因此,在实施SOA之前使数据合理化非常有帮助。


  我给你举一些实际的使用例子。人们会尝试着做一些事情,如创建报告程序,而当他们涉及到商业智能时,他们试着从两个或者三个不同的源中获取数据。他们需要创建常见的格式,使用相同的数据,而不必复制数据或者创建新的数据库。这时,数据服务和MetaMatrix能帮你办到这一点。它能提供基础层,帮你获取数据。


  根据您的经验,谁需要负责解决这些问题?


  Muzilla:从数据角度讲,这是个很有趣的问题,因为在你讨论ESB和基于Java应用程序的服务器时,那是整个公司和开发团队的高级架构。在你谈论数据时,它又不一样了。当然,也有一些具有架构团队的先进公司比较关注这些数据问题。但是,通常还有一个独立的团队,称为数据管理团队。他们需要负责数据仓库、商业智能工具,很模糊,就是一个数据领域。一些在公司里管理数据库的数据库管理员也有别于开发人员。因此,数据领域真的跨越很大,到底谁要负责任也不明确。


  在您看来,应该由谁负责?


  Muzilla:从架构角度讲,通常是高级架构副总需要关注你如何编写应用程序、如何整合程序。同样,还要关注获取数据的最佳方法是什么?如何构建数据?你需要几个数据库?数据库应该是什么样的?这个人最终应该负责任。


  只是一个人吗,而不是开发团队吗?


  Muzilla:当然每个人都有作用,但是如果你看待一个具有架构基础的领域,通常是一个团队负责,这个团队需要跨越应用程序开发世界以及数据库和数据管理世界。


  ETL软件在哪些方面不能解决这些问题?


  Muzilla:ETL是一项数据迁移技术。从一个数据库中抽取数据,迁移到另外一个数据库中,从而实现转化——从A取出,使其看起来像B。这并不抽象,这是从多数据库中实时利用数据,但并没有真正地实时利用。而是载入数据仓库的批处理过程。所以,像数据服务技术、MetaMatrix等技术实时提供数据。不是迁移数据创建数据仓库,而是帮你不必再创建额外的数据标志、复制数据,你可以得到原始的数据源,从这些数据源中获取数据。因为我有不同的应用程序,不同的应用程序需要如此,ETL帮你建立二十个新的数据库,但是现在你有二十个不同的数据库管理额外的硬件。


  数据服务技术所做容许你忘记复制数据,在原始数据上覆盖抽象层,使其看起来需要寻找利用数据的应用程序,而不必创建另外一个版本。这仅仅是一个数据源。


  MetaMatrix代码公布的最后期限是什么?


  Muzilla:我们今天发表了一个声明。这是声明的一部分。MetaMatrix有三个主要的组成部分。运行时间能帮助你获取数据,帮助实现转化,帮助运行分散式查询。IDE或者开发工具能帮助你模拟数据,因此你能在运行时间内实现转化。第三部分是元数据管理系统。元数据管理系统就是你可以存储模型、存储数据的地方。元数据看起来像什么?我们在讨论的DNA项目就是元数据管理系统。有了MetaMatrix,元数据管理系统就只是在数据模型中使用。我们所做的就是携带元数据管理系统,在任何与SOA相关的存储库中加以采用。其技术基础令人难以置信,因为元数据管理系统采用该项技术远远超过MetaMatrix。所以,采用开源的第一部分就是元数据管理系统。我们不久后将会就产品线路图的其他部分发表声明,那时这些都已成为开源模式,在未来的10至12个月,这些也会变成开源。


  治理的想法存在已经有一段时日了,您认为企业将要多久才能理解开源治理的必要性?


  Muzilla:将来几个月,我们会让其他人下一个定义。


  其他供应商吗?


  Muzilla:是的,我们已经与一些供应商谈过,包括我们的合作伙伴及其他对此感兴趣的供应商。我们将与其他供应商和终端用户对话,明确SOA治理的定义。有哪些任务呢?从那时起,一些软件解决方案就会紧随其后。要让每个人都理解这一点可能需要好几个月的时间。DNA项目已经启动,我们将与其保持一致。那将是如何定义治理的一部分,然后就会出现众多项目。我们需要一个注册项目、一个政策管理项目,我不知道会是五个项目还是十个项目,因为这要根据定义而定。


  所以,这个焦点会持续多久?


  Muzilla:可能到明年或者更久。我们可能会基于这些项目引进一些产品,新项目出现了,我们就会扩展产品。我想可能需要2至3年的努力,但是随着存储库、或者注册之类的明确概念出现,定义可能还会拓展。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • SOA治理模型核心:人

    治理在IT领域非常关键,但是很多时候企业的做法往往太过单向,企业SOA治理模型往往忽视了所有部分当中最关键的组件:人。

  • 如何使用SOA治理工具保证项目进度

    由API的增加以及为业务应用创建出简单好用接口的需求增长所驱动,这些合并的API-GRC工具帮助开发人员创建,发布,管理并且推广API的使用。

  • SOA治理工具优势:自动化、集中化

    SOA项目出现了失去控制的倾向,有可能会导致SOA行动出轨,失去对未来努力的支持,并且浪费时间和资源。

  • 中间件可帮助企业实现应用现代化

    本文,Tom Nolle讲述了大家都需要了解的现代化的流行做法,“中间件”方式——解释了如何确保采用的是正确方法,如何简化流程,并且为将来做好准备。