面向服务体系结构中的信息管理,第 1 部分: 发现SOA 中的信息管理角色

引言

信息管理,既包括了数据管理,还包括了内容管理,它是面向服务的体系结构(SOA)的基本构建模块。信息管理提供了一种可以在不同种类信息源(请见参考资料部分中的随需应变的操作环境的体系结构概述)之间表示、访问、维护、管理、分析以及集成数据和内容的方法。在信息管理中存在多种不同的功能,包括:

  • Extract Transformation Load(ETL)
  • 联盟(Federation)
  • 数据放置功能(例如替换和隐藏)
  • 数据建模功能
  • 搜索功能
  • 分析功能

可以将这些功能组合成复合组件,并且它们作为可复用的及可调用的 Web 服务来提供。检查这些功能是如何帮助构建 SOA 以及它们在 SOA 上下文中是如何交互的,这点非常重要。如果您对它们的意图和数值表述不清楚,那么很容易丢失大的图片,并且会错误地选择信息管理和体系结构。一个将信息管理合并成更大的、整个 SOA 图片的预见性计划可以帮助您解决一些常见的不足,例如数据 solos(独立的数据源)、数据的不一致性以及未使用的信息资产。





回页首


SOA 多于 Web 服务

信息管理服务处理 SOA 的信息组件。但是,当人们想到 SOA 的概念时,他们通常会首先想到 Web 服务。很少人会越过 Web 服务编程模型而想到信息管理的潜在方面。然而,信息管理支持 SOA,因为它解决了其中一个最重要的公司资产——结构化格式和非结构化格式的信息。信息的体系结构是信息管理的关键部分,它使得 SOA 更加智能且可管理(请见参考资料部分中的 SOA 中的 EII 角色)。最后,如果没有坚固和强大的信息管理环境,SOA 将受到局限,并且几乎没有端到端的业务集成和转换的可能性。

SOA 中的信息管理重在企业信息集成(Enterprise Information Integration,EII)——该技术集成了结构化和非结构化的信息源使它们可以如同单一的信息源一样被处理。通常,结构化信息包括了相关的、XML、或者表格数据,例如电子制表。传统上说,在数据管理的标签下,管理结构化的信息要落后些。相反,非结构化信息包括了免费的文本报告、文档、Web 页面、生命科学数据、音频、视频等等。对于非结构化信息的管理一般被分类为内容管理

EII 可以提供对数据和内容的统一观点,这样就简化了对潜在的信息服务的表现和访问。SOA 中的信息管理也扩展了 EII 使其包括 ETL、数据放置、数据恢复以及类似功能。创建声音信息的体系结构和设计的部分流程是要权衡不同方法之间的利弊,以便您可以将合适的技术应用到解决客户问题上。





回页首


信息管理如何启用 SOA

SOA 中的信息管理,尤其是 EII,强调将服务层与数据的物理实现之间的关系分离。这种分离技术通常由中间件提供,例如 IBM® WebSphere® 信息集成器(以前为 DB2® 信息集成器)。这样的中间件可以大大减少用户所有权的总花费和信息集成的复杂度。合理使用 EII 可以生成潜在的不同类数据的集成化视图,服务很容易与这些数据协调工作,这样有助于从物理数据的更改中将服务层隔离出来。这种隔离层对于 SOA 来说非常重要,这是因为它使得数据库厂商的产品、OS 平台、信息位置、数据格式以及物理数据模型透明化。

为了从应用程序中得到信息源的松耦合视图,SOA 中的信息管理访问并且聚合了不同类的数据和内容源(这种性能称为 联盟),因此当它们显示给用户时,它们就好像是单独的数据库或者内容源。因为 SOA 中的信息管理担当应用程序和数据源之间的中间设备层,所以集中了用于数据连通性、数据转换规则和数据映射的编程逻辑,并且许多应用程序(服务用户)可以复用它们。此外,SOA 中的信息管理提供了强大的扩展性,它允许应用程序和用户不仅可以在企业内部访问信息,而且还可以穿过企业和业界边界来访问信息。这种完全端对端级的业务和信息集成赋予业务很大到灵活性和适应性,这为成为随需应变的业务铺平了道路。最后,SOA 中的信息管理是基于信息标准的,这些标准的范围从数据、内容和元数据到元模型以及元-元模型(我们将在本文的后面详细讨论),例如 Unicode、XML 以及 Metadata Object Facility(MOF)。

作为 Web 服务的提供者,IBM DB2 UDB 创建了一个对 SOA 开发和部署非常友好的环境。例如,Web 服务对象运行时框架(Web Services Object Runtime Framework,WORF)装载了用于 Linux、UNIX、Windows® 和 z/OS 的 DB2 UDB,它提供了环境,在其中可以很容易创建访问 DB2 数据库的简单 Web 服务。用简单的术语来说,就是可以使用包含一系列操作的 XML 文件来定义对 DB2 数据的访问。这些操作可以是 SQL 操作(选择、插入、更新、删除操作,或者对存储过程的调用),也可以是 XML 集操作(生成或者存储 XML 文件)。

作为 Web 服务的用户,IBM DB2 Web 服务客户的用户定义的功能(UDF)启用数据库应用程序来使用 SQL 声明直接调用 Web 服务。您可以使用 WebSphere Studio Application Developer 来轻松地将现有的 WSDL 接口转换成 DB2 表格或者分级的 UDF(请见参考资料部分中的用于 DB2 信息集成的 XML)。





回页首


将信息管理重新构建到 SOA 中

我们已经描述了信息管理是如何启用 SOA 的。现在我们来看一看信息管理如何能同时从 SOA 的原理中获益。

面临的挑战

尽管出现了很多信息标准,例如 XML、Unicode 以及 UML,但是许多数据源仍然使用私有的数据格式、元数据以及元模型,这是由我们一直以来的习惯形成的。将不同数据源集成在一起需要大量的工作,并且通常是通过构建端对端的数据和应用程序集成来实现的。为了说明该问题在行业中的严重性,目前行业中有超过 250 个厂商在输入端提供了用于不同种数据源的 ETL 工具,并在输出端提供了分析工具(请见参考资料部分中的“Java 元数据接口(JMI)规范”)。ETL 常用于从源系统中提取数据,将数据转换为与目标系统相兼容的格式,然后将其装载到目标系统中,例如数据仓库或者数据市场。考虑到 ETL 仅仅是 EII 的一小部分,所以您可以想象端对端集成问题的范围和严重性。

在内容方面,这些具有挑战性的问题令人生畏。内容管理的解决方案来自不同的历史体系,而且大部分是纵向分析并且是基于部门角度分析的。例如,用于法律部门的文件管理、用于 IT 部门的知识管理,或者是用于营销部门的 Web 内容管理。在目前的内容管理市场中,经常使用来自不同厂商的产品来提供这些解决方案。即使是单独的厂商,产品之间的功能也是经常重叠的。

随着时间的推移,分离不同种类解决方案的界限已经越来越模糊。例如,当前的业务智能需要实时性数据来获得对市场定位的完全理解,市场定位促使 ETL 厂商扩展实时性数据性能。另一方面,数据联盟越来越需要数据的转换性能来提高数据的质量和灵活性。在很多方面我们正在看到一种聚合趋势——一些实例是数据和内容集成的聚合(特别是在 XML 的上下文中)、ETL 和联盟的聚合、知识管理和 Web 内容管理的聚合。

当企业要做出一些改动时,需要面对巨大的挑战。以下是企业必须要考虑的一些项目:

  • 放弃从纵向和部门的角度来考虑问题
  • 将现有的信息管理功能转换为可复用的服务
  • 集成大量的不同类信息源
  • 减少开发费用
  • 扩展功能

这些挑战并不是很容易解决的,因为厂商想保护他们当前的 IT 资产和用户基础。企业内部的提倡者同时也必须在内部出售 SOA 构想,然后向基于标准规范的方向前进。从用户的角度来看,将逐步渗透 IT 资产的复用作为组织文化的一部分,这是非常艰巨的任务。

优点

对于那些采用 SOA 作为信息管理的用户来说,优点非常多。在其他部分之中,基于 SOA 的信息管理有以下功能:

  • 允许系统的 IT 资产复用。数据建模、映射以及转换功能是最复杂并且是集中劳力的流程。当前的点对点信息集成不容易导致 IT 资产的复用。
  • 加快开发速度,并且减少了开发和维护的费用。
  • 使用更大的成本效益来提高数据和内容连接性和互用性。
  • 创建了附加的基于完全集成化信息的业务视野。例如,Gartner 预言了分析非结构化内容的能力将会导致产生新的业务机会。
  • 保护用户在很不稳定的信息管理市场里的投资,在那里经常会出现合并和收购。
  • 简化了企业计算模型的总体复杂度。





回页首


信息管理提供的服务

前面不仅陈述了使用 SOA 来重新设计信息管理的挑战和益处,而且也陈述了信息管理如何启用 SOA,让我们先来检查信息管理所提供的服务,例如 Extract Transformation Load(ETL)、联盟、建模、搜索和分析。

以下的清单阐述了一个信息管理堆栈,它是对信息管理所提供的服务进行分类的逻辑视图或者框架,该信息管理基于它们的价值提议:安全性、协作性、可利用性、可管理性和信息消费:

  • 安全性(Security):这是应用程序访问基于 who-can-see-what 策略的不同种类数据源的入口点。
  • 协作性(Collaboration):这是在开发小组环境中必不可少的部分,因此您需要工作流和版本控制。
  • 服务质量(Qualities of Service,QoS):它包括了实现信息的可用性、性能、数据吞吐量以及数据的一致性或者正确性。联盟、ETL、缓存、复制和事件的发布功能的目的都是为了与 QoS 的目标相匹配。
  • 可管理性(Manageability):因为信息是存储组织的智能和复杂度的方式,所以要使用(结构化和语义的)建模、(数据)概要分析和(数据和内容)质量disciples 以使信息更加便于管理。
  • 消费(Consumption):此外,前面工作的全部意图是需要有操作者(包括机器)来使用它;因此信息消费位于该堆栈的顶部。

没有单独的产品提供所有这些服务。本文最后列出了实例工具。总体上来说,这些服务在 SOA 下创建了一个完整的信息管理框架。理想的情况是每个服务都专门写一页来进行描述其权利,但是我们这里只提供了概述。


图 1:SOA 中的信息管理
SOA 中的信息管理

SOA 中的信息管理全面地观察了企业组织内部以及贯穿整个组织的信息资产。尽管多种技术可以用于不同的用途,但是信息管理并没有任意地将信息分为结构化或者非结构化的部分;也没有将解决方案划分为部门的视图。SOA 中的信息管理与早期更严格的数据和内容管理方法相比,最关键的区分标志是它可以为在合适的时间、合适的地点并且有正当理由而需要它的任何用户提供服务。

正如我们前面所述,通常由中间件提供在信息管理堆栈中所列出的服务。尽管需要抑制成本花费和部署时间,但是企业可以选择从初始状态将这些服务构建到他们的应用程序中。最好的实践就是理解业务的需求,选择一个可以提供完好的信息集成和最完备的信息管理解决方案的厂商,然后构建几个选择性的服务来弥补丢失的部分,甚至将某些的复杂服务外包给第三方信息服务提供者,如我们将在本系列文章的下一部分中的实例研究所述。





回页首


结束语

您已经看到了信息管理是如何在 SOA 的上下文中工作的,并且阐明了它们之间的关系。您同时也检查了将信息管理重新构建到 SOA 中的益处和随之而来的挑战。

本文是 SOA 中的信息管理的系列文章(共两部分)中的第一部分,提供了这些服务的高级概述。在第二部分中,作者将会描述每个服务的详细信息,并会提出实际的用户场景。

致谢

作者要特别感谢 Susan Malaika,Norbert Bieberstein 和 June Gu 所给予的极好的意见。同时也感谢 Robert D. Johnson 和 Elizabeth Wallace 的支持。





回页首


参考资料





回页首


作者简介

Mei Selvage 从 Montana 的 Missoula 的 Montana 大学毕业以来,担当过 IBM 中多个开发小组的数据架构师、数据建模者和数据库管理员。她是 SOA Compass 一书的作者之一,并且对元数据和信息的体系结构、管理和集成、人员协作以及科技对社会的影响方面有浓厚的兴趣。您可以通过 meis@us.ibm.com 联系她。


 

Dan Wolfson 是 IBM 软件小组在业务集成方面的著名工程师和主要技术官员。他在分布式计算方面有超过 18 年的工作经验,Dan 的兴趣很广泛,包括信息集成、中间件集成,元数据,消息传递以及事务系统。您可以通过 dwolfson@us.ibm.com 联系他。


 

John“Boz”Handy-Bosma 从 Austin 的 Texas 大学获得通信专业的博士学位。他目前是 IBM Global Services 和 Application Management Services 的高级 IT 架构师。Boz 是 Application Management Services 中很多工程的项目领导,重在研究 IT 体系结构中的最佳实践,指导技术专家,以及在探索和协作中新兴的技术。您可以通过 bosmaj@us.ibm.com 联系 Boz。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值