为 DB2 pureXML 用户提供的工具和 XML 功能

为 DB2 用户 XML 任务选择工具

本文为数据库用户提供 XML 工具选择方面的指导,帮助他们了解 IBM® DB2® 目前已经能够通过 pureXML® 对 XML 数据进行有效的存储与处理。XML 的大小,可能是从每个文档实例几 kilobytes (KB) 到几 megabytes (MB) 不等,并且其所具有的层次结构要求在采用 DB2 pureXML 时,需要提供工具功能来简化创建、查看、编辑以及查询 XML 实例与模式的任务。本文回顾了 IBM 所提供的、用于处理 XML 数据库对象的工具的 XML 功能,由于在数据库中含有 XML 而受到影响的不同任务角色,以及涉及到的具体任务。然后描述了关键 XML 相关任务,以及哪些工具有助于完成这些任务。

Bryan Patterson, DB2 Data Server 解决方案架构师, IBM

Bryan Patterson 是 IBM Silicon Valley Laboratory 的高级解决方案架构师,专门从事数据库管理方面的研究。他已经有 20 多年的软件行业经验,曾在开发、质量保证和生产规划方面担任管理职位。他的电子邮件地址为 bryanp@us.ibm.com。



2011 年 1 月 21 日

简介:DB2 pureXML 与 XML 数据

公司越来越多地使用 DB2 中的 pureXML 功能,来处理传统的文本与数值关系数据库数据,同时存储、管理、以及查询 XML 数据。不管是否经过模式验证,DB2 pureXML 都支持存储 XML、在 XML 文档中的单个元素或属性上创建索引,以及基于元素或属性中的值来检索全部或者部分 XML 文档。这些 pureXML 功能已经使得公司减少了处理 XML 所需的应用程序代码量,明显消减了解析 XML 并将其转换为其他格式以调适关系结构的工作。应用程序现在不需进行中间的转换,就可以对 XML 进行接收、传输、存储和检索。这一简化的流程通常被称为端到端 XML 处理(如图 1 所示)。

图 1. 端到端 XML 处理
图中展示了应用程序客户端通过经由 SOAP 的 XML 或经由 HTTP 的 ReST 连接到应用服务器,然后该服务器采用 SQL/XML 和 XQuerythen 连接到一个 DB2 数据存储

这一强大的 XML 功能在数据库中的应用,引起了对一些工具的需求,这些工具用来帮助数据库用户创建、查看和编辑原生 XML,用于开发和测试目的,用于在 XML 数据上构建查询与索引,用于处理 XML 模式和其他相关对象。有很多 IBM 所提供的工具,以及其他来源的工具,在其功能清单中包含了 XML 功能。本文概述了一些可能需要数据库用户对 XML 数据执行的一些常见任务,并指出可以帮助执行这些任务的 IBM 工具。这些任务按照当前 IT 组织中典型的数据库角色来分组,并确定了与 XML 相关需求最匹配的工具。


为 DB2 用户提供的、具有 XML 功能的 IBM 工具

IBM 提供终端用户工具来在整个生命周期进行数据管理,包括数据操作与维护、调优、数据架构/设计,以及应用程序开发等。我们来看一下所引用的 IBM 工具和对其主要功能的简要说明,以及 XML 相关的功能:

  • DB2 Control Center(随 DB2 数据库免费提供)
    • DB2 系统与数据库对象管理;提供了采用集成 Command Editor 的交互式查询界面。
    • XML:创建并管理 XML 数据库对象,以及查询并查看 XML 数据。
    • 注意:不推荐采用 DB2 Control Center,这意味着今后不会对其进行增强,并会从以后发布的版本中去掉,而由其他工具所替代。
    图 2. DB2 Control Center 与 Command Center
    Control Center GUI 的屏幕截图展示了资源管理器窗格位于左边,自定义表位于中间,命令编辑器窗格位于右边
  • IBM Optim® Development Studio (ODS) 和 Data Studio
    • 数据开发,包括创建和执行查询(SQL 和 XQuery)与存储过程,开发与部署数据 web 服务,以及支持用于数据访问的 Java™ 开发。
    • XML:XML/Schema 编辑器,XML 映射器,web 服务,Database Explorer,模式注册,从 XML 生成 XML 模式。
    图 3. Optim Development Studio
    屏幕截图展示了 Data Explorer 窗格位于左边,XQuery 窗格位于右上方,而 SQL 结果窗格位于右下方
  • IBM InfoSphere™ Data Architect (IDA)
    • 逻辑和物理数据建模 — 设计数据库;发现、关联、整合、以及规范多样化的数据资产;一些模型转型(UML/LDM/PDM)。
    • XML:数据建模,XML 模式转型。
    图 4. InfoSphere Data Architect
    屏幕截图展示了 Data Project Explorer 窗格位于左侧,数据关系图位于中间,大纲视图位于右侧
  • IBM Rational® Application Developer (RAD) for WebSphere® Software
    • 应用程序开发 — 提供 Java 开发(EJBs、JPA、JSF 等等)、测试和部署相关的工具,包括 web 服务、门户及 SOA 应用。包含一个集成 WebSphere 测试环境。
    • XML:XML/模式/XSL 编辑器,XML 映射编辑器,数据库浏览器;从 XML 模式生成关系表定义。
    图 5. Rational Application Developer
    RAD 帮助画面的屏幕截图展示了 Contents explorer 位于左侧,而关于 XML 应用程序开发的文字位于右侧
  • Rational Software Architect (RSA) for WebSphere Software
    • 模型驱动的设计与开发;包括所有的 RAD 特性,以及建模与架构工具。
    • XML:包含 RAD 的 XML 工具,以及建模与架构功能(转换、建模、UML 等等)。
    图 6. Rational Software Architect
    屏幕截图展示了 Enterprise Explorer 与 Data Source Explorer 窗格位于左边,NewFile.xsd 位于中间的窗格,而 Outline 窗格位于右边
  • InfoSphere Warehouse Design Studio
    • 用于创建物理数据模型的图形化工具,DB2 基于 SQL 的数据仓库结构数据流,以及 OLAP 多维数据集模型。
    • XML:映射 XML 源数据到数据仓库定义。
    图 7. InfoSphere Warehouse Design Studio
    屏幕截图展示了 XML 数据流图示例

IBM 工具及 XML 概要

非 IBM XML 工具

除了这些 IBM 工具之外,各种文本及代码编辑器也增加了便于编辑 XML 数据的特性,这经常能够为很多数据库用户任务提供必要的功能。此外,有很多供应商提供文本编辑器以及专门用于 XML 的 Integrated Development Environment (IDE) 工具,这能够满足本文所讨论的、除了与数据库操作紧密相关的很多需求。一些最知名的 XML IDE 工具包括,来自 Altova 的 XMLSpy,来自 SyncRO Soft 的 oXygen,以及来自 Progress Software 的 Stylus。见 “非 IBM 工具部分” 来深入了解这一主题。

这些 IBM 工具有一些共同的 XML 功能,并且,在有些情况下,它们还共享组件模块。例如,在每个工具中,您可完成 XML 实例或者模式的基本编辑。此外,所有这些工具,除了 DB2 Control Center 之外,都是基于 Eclipse(可扩展开源开发平台)的,因此,它们都具有类似的外观与感觉。本文的其余部分帮助阐明每个工具在何处更适合于处理所给的任务。很多时候,所推荐的工具不是由单个任务所驱动,而是由更广泛的用户角色及其所需完成的任务所驱动。还有其他包含 XML 功能的 IBM 工具,但是为了保持内容简洁,本文主要关注以上所列的部分。

IBM 还提供其他产品用于针对 XML 应用程序来辅助 DB2 pureXML,比如,IBM WebSphere Application Server 的新的 Feature Pack for XML、IBM WebSphere Integration Developer、以及 IBM WebSphere DataPower。这一集成已经超出了本文的范围,但是,它们确实有助于整合端到端 XML 应用程序。这些产品的用户可能具有与面向 XML 工具相类似的需求。(关于这些主题的更多信息包含在 参考资料 部分中。)


DB2 用户和 XML 数据的影响

公司当中分处不同角色的信息技术专业人员具有不同的职责,虽然这些职责相关且有时有些重叠。在很大程度上,个人的角色决定了其需要在数据库中对 XML 数据执行的任务。例如,有些专业人员需要创建或修改 XML 数据,而其他人仅需了解其结构,来进行高效查询。其中一些 XML 任务需要有很多专业人员执行(比如,查看 XML 数据),而其他任务可能需要为特定的角色定制。在有些情况下,单个工具可能会提供满足给定责任集的所有功能,甚至能够满足多个角色的需求。在另一些情况下,可能需要多个工具来满足特定角色的不同需求。本部分概述一系列信息处理专业人员角色及其 XML 数据相关需求。(注意:虽然各个公司可能会以不同的方式对其角色进行定义和分类,但是这其中的每个活动将需要被一个或多个员工组所涵盖。)在随后的部分,我们将指出能够满足这些需求的 IBM 工具。

数据库管理员(DBA)

DBA 负责组织数据库的运行。任务包括计划并管理数据库、调优性能与容量、创建和维护索引并优化查询、监测、以及管理备份与恢复。

XML 任务: 创建并维护具有 XML 数据的表和视图;创建并调优 XML 索引;查询并查看 XML 文档;存储并管理 XML 模式文档。

数据库开发人员(数据库编程人员)

数据库开发人员创建并优化数据库访问,包括查询、存储过程、数据 web 服务以及报告,有时同时涵盖事务(OLTP)和面向数据仓库的数据(OLAP)。在有些组织中,这一角色由 DBA 或者软件开发人员执行。

XML 任务: XML 查询(SQL/XML, XQuery)与存储程序开发;XML 数据仓库映射与填充。

软件开发人员(应用程序编程人员)

软件开发人员负责设计与开发应用程序或者 web 服务来存储、访问、以及从数据库中检索数据,以及连接到其他业务应用。这一角色经常采用 Java,但是可能还采用其他高级或者脚本语言。

XML 任务:编写应用程序或者 web 服务,来高效地在 DB2 数据库中存储与检索 XML 数据;考虑 XML ,而不是关系结构。

数据架构师(数据库分析师)

数据架构师负责确定并归档数据流,以及数据处理与存储的结构,通常针对逻辑与物理数据结构采用数据建模技术。

XML 任务:设计数据库结构,包括 XML 列或者与从 XML 中抽取的数据相关的列(将 XML 映射到关系结构)。

软件架构师(应用程序架构师)

软件架构师负责高级业务建模和确定实现了业务模型的应用程序架构。他们设计应用程序流和架构,在应用程序设计中表示业务流程。

XML 任务:创作并维护 XML 模式、XML 文档或两者兼而有之(代表业务),并确定任何所需的数据映射或者转换。

本文深入讨论了这些角色,并概述了可帮助其满足在 “数据库用户角色与 XML 需求” 部分中的 XML 需求的工具。


检查关键 XML 任务和工具功能

在更深入挖掘数据库角色及相关 XML 需求之前,我们首先停下来,描述一些当 XML 数据成为数据库一部分的时候,所浮现出的常见的关键 XML 职责。这些职责分为数据库相关的、XML 原生的、以及与应用程序相关的类别。这并不是一个详尽的清单(可能会有很多其他 XML 活动数据库用户从事此类事情),而是对数据库用户最通用的 XML 相关任务的基本解释。

数据库对象相关 XML 任务

这些类型的任务与在数据库中创建并管理对象相关,比如表和索引。

  • 定义数据库结构来管理 XML 数据

    这一任务涉及定义数据库模式(表、列),来在关系数据库中存储 XML 数据。幸运的是,对于 DB2 用户来说,自从 XML 成为 DB2 9(LUW 和 z/OS)中全面的数据类型后,创建包含 XML 数据的表已成为非常简单的过程。这意味着用于创建具有其他数据类型的表的相同命令与工具,还可用于创建包含 XML 列的表。例如,create table mytable (idcol int xmldoc xml) 将会创建具有一个整数列(idcol)和一个 XML 列(xmldoc)的表。关于表和数据库的其他因素,比如表空间的定义和缓冲池的分配,也针对 XML ,对其如同管理其他关系数据类型一样进行管理,这样就不会产生对新工具的需求。然而,至关重要的是当前数据库专业人员用来执行这些任务的工具,经过扩展,已包含相同的 XML 数据功能。对于 DB2 LUW 和 DB2 for z/OS,对 XML 的支持已包含在这些工具中,包括 DB2 Control Center、Command Line Processor (CLP),或者面向 z/OS、SPUFI(采用文件输入的 SQL 处理器)。最后,如果完成了建模,IDA 会包含工具来将逻辑或物理数据模型映射到 XML 模式,这可以在 DB2 中表示为 XML 列。

  • XML 到关系结构以及关系结构到 XML 的映射和转换

    有些时候,可能因为各种原因,需要将数据中一种格式转换为另一种格式。例如,公司可能从合作伙伴接受 XML 数据,但是需要将其集成到访问单个元素值的应用程序,因此需要工具来将 XML 转换到关系结构。或者,存储在数据库中的 XML 文档需要在报告工具中使用,这些工具仅识别离散数据的列,并且不能处理或格式化 XML,因此,需要转换机制。反之,应用程序可能需要从关系列中的数据源传输 XML 格式,因此需要从 XML 到关系结构的映射。

    ODS 包含特定的 XML 到关系结构的可视化映射器,来构建带注释的模式,识别如何将给定的 XML 结构映射到关系表和列。然后将这一带注释的模式加载到数据库中,并用于将进入的 XML 转化为所定义的关系列。其他映射,比如 XML 到关系结构或者关系结构到 XML 的映射,可能需要采用强大的 SLQ/XML 语法来完成,但是,这些是代码级别的结构,不是可视化工具。Altova 的 MapForce 之类的工具明确地用于从一个数据格式到另一个数据格式(包括 XML 和数据库格式)的可视化映射。

  • XML 查询开发与指导

    对于很多数据库和应用程序用户来说,SQL 是很熟悉的查询语言,但是 SQL/XML 扩展和 XQuery 对于他们来说都是全新的。对于这些用户,需要工具来提供构建 SQL/XML 或 XQuery 查询所需的开发环境或指导。这一需求可被扩展来支持在 XML 数据上操作的存储过程的开发。相关的需求,是要一个工具来在 XML 文档中为给定元素或者属性指出完整的 XPath 路径(这些文件可能很大,并且可能很容易错误地输入路径的一部分,或者当需要键入大写字母时,错误地输入了小写字母,并且当查询产生的不是预期结果时,还无法找到错误,直到进行调试时才找到错误)。

    DB2 Control Center 的 Command Editor 提供了针对数据库构建和执行 XML 查询的工具,并能在查看器中查看 XML 结果。ODS 和 RAD/RSA 工具也提供查询开发环境来支持 SQL/XML 和 XQuery,包括基本语法检查和查询概述,以及针对数据库的执行能力,展示 XML 结果,并构建存储过程(见 图 8)。这些工具还具有基本的 XML 路径发现功能,但是它与 XSLT 编辑器相关,因此对于查询开发并不真的有用。除了 IBM 之外,面向 XML 的工具,比如 XML IDE 产品,在其编辑器产品中提供此类功能。

    图 8. 在 ODS 中创建 XQuery 语句
    屏幕截图展示了 Xquery 语句位于左侧,并且以资源管理器的格式在左侧展现概述
  • 在 XML 数据上创建或修改索引

    一旦 XML 文档存储到 DB2 的 XML 列中,并且应用程序开始确定公共使用模式,您可能想要在频繁访问的元素上创建索引,或者在 XML 文档中创建属性,来优化查询响应时间(就像使用关系数据库一样)。DB2 pureXML 允许在 XML 文档的任何元素或属性上建立索引。

    创建索引最直截了当的方式,就是采用可以运行查询的命令行接口。您可以采用 DB2 Control Center(Command Center)和 Optim Development Studio 命令行接口来完成这一任务。这是在 DB2 Control Center 中的向导,指导用户通过几个步骤在 DB2 表的 XML 列上创建索引。其他工具中的索引创建向导还不能为 XML 索引创建处理 XPath 定义。

  • 在 DB2 的 XML 模式库中存储 XML 模式文档

    DB2 pureXML 提供针对 XML 模式来验证 XML 文档的能力。为了使这成为可能,必须将模式加载(注册)到 DB2 的 XML Schema Repository(XSR)。虽然将模式加载到 XSR 的命令很简单,遗憾的是,模式本身通常很复杂,是由很多链接的文件组成的,在最坏的情况下,可能达到几百个。加载此类多文件模式可能会乏味而容易出错(我是否已加载模式文件 33?),因此用户想寻求工具来协助识别所有组件文件并自动化或脚本化加载流程。

    IBM Data Studio and ODS(以及 RAD 和 RSA)提供了工具来协助在 DB2 的 XSR 中注册 XML 模式。这些工具自动发现一个级别的导入或包含,但是进一步嵌套的文件部分还需要手动加载。工具能够直接注册或者创建以后要运行的脚本。可以在 XML IDE 产品中找到更成熟的 XML 模式工具,其中一些连接到 DB2 并指导注册流程,比如 XMLSpy 或者 oXygen。

本机 XML 相关任务

这些任务主要用于创建和编辑 XML 对象,一些与最终数据库的使用相独立。

  • 编写并查看 XML 文档

    XML 数据需要源自某处。这个责任可能会落在数据库用户身上,该用户创建 XML 文档(实例)或者创建定义 XML 文档结构的 XML 模式。此外,一旦 XML 模式或者实例数据存储到了 DB2 pureXML 中,用户对该 XML 数据执行的查询可能会返回(格式化的)需要以清楚的(格式化的)方式查看的 XML 文档。

    查看或者编辑 XML 文档的工具通常被称为 XML 编辑器(如果是只读,则为查看器)。通常,这些工具采用彩色编码来突出显示语法,并提供对文本或格式化的自动完成功能,来方便阅读。模式编辑器是 XML 编辑器的特殊变体,它能够识别 XML 模式(XSD)格式。其他特殊的 “智慧编辑器” 变体可能包含 XSLT、DTD、以及 WSDL。有些编辑器甚至提供向导来指导用户完成文档创建步骤。

    DB2 Control Center 提供一个 XML 查看器和简单的编辑器,而 Optim Development Studio 和 Rational Application Developer 提供更加成熟的 XML 和模式编辑器。

  • 确保格式标准或者有效的 XML

    DB2 pureXML 能够非常灵活地在任何 XML 列中存储各种大小和结构的 XML 文档。在 DB2 的 XML 列中存储 XML 文档的惟一要求就是,它必须是标准格式的。DB2 本身会对插入的 XML 文档的格式良好性进行验证,会拒绝那些不符合要求的文档。DB2 还可以选择性地针对所给 XML 模式对 XML 文档进行验证。但是,当数据库或者应用程序相关人员想要在插入 DB2 之前,检查所给 XML 文档或文档的格式正确性或有效性时,需要花费一些时间。

    还有很多用于进行这些 XML 检查的替代工具。选项之一是创建测试数据库表,并利用 DB2 的内置解析器进行检查。另一个格式正确性检查的替代方法是,在浏览器(Internet Explorer、Firefox)中打开 XML,如果有问题将会提示错误。更好的选择是利用 XML 编辑器打开,包含 IBM 工具中的那些,它能够显示错误,并允许您修复错误。如果您启用了相关功能,XML 编辑器还能够针对模式来检查 XML 文档。

  • XML 模式开发

    有时候,企业可能会从合作伙伴或者客户那里接收到作为商定的交换格式或者行业标准的 XML。其他时候,公司内部的一些人需要创建 XML 格式,来为表示业务事务或者活动的数据进行建模。这一数据为 XML 格式时,它通常由 XML 模式文档(XSD)所捕获,该文档定义了必要和可选内容、结构、以及在每个符合 XML 的文档中对数据的控制或限定。XSD 中协助创建有效 XSD 文档以及创建样例 XML 实例的工具将使这一工作变得很简单。经过增强可识别并指导 XSD 语法的 XML 编辑器是此类工具的示例之一。

  • 映射和转换 XML

    有些时候,您需要创建来自给定 XML 模式(XSD)的样例 XML 文档实例,来自 XML 实例的模式,或者两者都要创建。涉及 XML 的其他转换示例包括 XML 到 XML,以及 XSD 到 XSD 的转换。

    幸运的是,大多数 XML 编辑器,包括那些本文所提到的 IBM 工具,具有这一内置功能。ODS 也具有 Java 数据库应用开发和 XML 查询开发功能。

  • 从实例或模式生成测试数据

    一旦公司决定要存储 XML 数据,它们知道 DB2 能够处理并存储任何格式正确的 XML 结构。通常,数据库或应用程序组具有 XML 文档示例(实例)或者模式,但是他们想要创建用于查询和应用程序测试(例如,基于单个 XML 文档或模式创建 1000 行不同的 XML 内容)的数据集。所需的是 “智慧的” XML 编辑器或者向导,允许通过识别特定元素或属性来从单个实例(或模式)创建多个 XML 实例,应当为这些元素或属性提供随机/可变数据,或者指出这些元素或属性是存在还是不存在。

    应当通过编辑单个实例,来利用作为 IBM 工具一部分的 XML 编辑器来创建测试数据。如果想要几百个、甚至更多测试文档,那么这将非常乏味。最好的大规模 XML 测试数据生成工具,应当是专注于 XML(而不是数据库或者应用程序)的工具。下面提到的几个 XML IDEs 最近已增加了测试数据功能。

XML 应用程序

这些任务涉及到开发传输并访问存储在数据库中的 XML 数据的应用程序。

  • 设计并开发应用程序来在 DB2 中存储并查询 XML

    DB2 中的存储与查询 XML 的功能,提供了新的或者增强的应用机会。开发人员需要创建在 DB2 中利用 SQL/XML 或者 XQuery 来存储、操作、以及查询 XML 数据的应用程序。这可能设计专注于 XML 文件处理或转换的设计与开发工具。

    RAD 是为开发人员提供的工具,它包含查看和编辑 XML、以及为 DB2 构建和测试基于 XML 的查询的功能。

  • 设计并开发 web 服务来在数据库中处理、存储和查询 XML

    与前面的部分类似,此次开发 Web 服务是采用 SQL/XML 或者 XQuery 来在 DB2 数据库中存储或查询 XML 数据。这些特定 web 服务有时被称为数据 web 服务(DWS)。这部分包含的特定需求是提供 web 服务接口(比如以 Web Services Description Language(WSDL) 的形式),或者为消息连接验证 web 服务端点。

    ODS 与 RAD 都具有 web 服务创建工具。例如,ODS 支持使用拖放功能,通过查询或者存储过程来创建或部署 web 服务。

XML 任务及工具综述

下面的表提供了对以上所提到的不同 IBM 工具的 XML 功能的综述。表中展示出有些功能是由全部或大部分工具所提供的,而另一些功能则只是一两个工具所具有的。

表 1. 对应到 IBM 工具的 XML 功能
XML 功能DB2 Control Center 9.7Data Studio IDE 2.2ODS 2.2IDA 7.5.2RAD 7.5RSA 7.5ISW Design Studio 9.7
XML 编辑器XML Editor (文本、语法格式)
勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
模式(XSD)编辑器
勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
验证器XML 验证器

勾选标记图标进行确认
勾选标记图标进行确认勾选标记图标进行确认
XSD 验证器

勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
WSDL 验证器

勾选标记图标进行确认
勾选标记图标进行确认勾选标记图标进行确认
XSL 验证器

勾选标记图标进行确认
勾选标记图标进行确认勾选标记图标进行确认
调试器XSLT 调试器



勾选标记图标进行确认勾选标记图标进行确认
映射关系结构到 XML 映射器
勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认

勾选标记图标进行确认
XML 到关系结构映射器
勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
带注释的模式映射器
勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
XML 到 XML 的映射器

勾选标记图标进行确认
勾选标记图标进行确认勾选标记图标进行确认
逻辑模型到 XSD 的映射


勾选标记图标进行确认


物理模型到 XSD 的映射


勾选标记图标进行确认

勾选标记图标进行确认
数据库连接到 DB2勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
DB Explorer(db 对象)勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
创建数据库、表(XML)勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
创建索引(XML)勾选标记图标进行确认勾选标记图标进行确认
(注解¹)
勾选标记图标进行确认
(注解¹)
勾选标记图标进行确认
(注解¹)
勾选标记图标进行确认
(注解¹)
勾选标记图标进行确认
(注解¹)

导出以及导入 XML勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
提取数据 — 查询 XML勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
查询编辑器(SQL,XQuery)勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
SQL 生成器勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
XQuery 生成器
勾选标记图标进行确认勾选标记图标进行确认



存储过程生成器
勾选标记图标进行确认勾选标记图标进行确认
勾选标记图标进行确认勾选标记图标进行确认
Data Web Services Developer
勾选标记图标进行确认勾选标记图标进行确认
勾选标记图标进行确认勾选标记图标进行确认
将 SQL 与 Java 代码相关联

勾选标记图标进行确认



将 XML 模式注册到 DB2
勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
XML 查询的可视化解释勾选标记图标进行确认勾选标记图标进行确认勾选标记图标进行确认
勾选标记图标进行确认勾选标记图标进行确认

1 能够手动创建索引(不是通过向导)、但是不会在 Database Explorer 中显示的工具。


数据库用户角色与 XML 需求

单个或整套的 XML 责任经常依据公司内个人的角色下派给组。由于这个原因,在寻求 XML 工具辅助时,最好先查看面向个人总体职责的 IBM 产品。以下表总结了 5 个数据管理角色的 XML 任务责任,并指出了最适合每个角色的 IBM 产品工具。

表 2. 对应到数据库用户角色的 XML 任务
XML 任务数据库管理员(DBA)数据库开发人员软件开发人员数据库架构师软件架构师
XML 表、视图勾选标记图标进行确认

勾选标记图标进行确认
在 DB2 中管理 XML 模式勾选标记图标进行确认



XML 数据




  • 查看 XML
勾选标记图标进行确认

勾选标记图标进行确认
  • 创建并编辑 XML

勾选标记图标进行确认勾选标记图标进行确认
勾选标记图标进行确认
  • 创建并维护 XML 模式(XSD)

勾选标记图标进行确认勾选标记图标进行确认仅限查看勾选标记图标进行确认
  • 确保格式正确与有效的 XML


勾选标记图标进行确认
勾选标记图标进行确认
  • XML 转换

XML 到关系结构XML 到关系结构,或者其他数据模型到 XSD 的转换数据模型到 XSD 的转换
  • XML 映射
关系结构与 XML 之间的映射



  • 查询指导/XPath

勾选标记图标进行确认勾选标记图标进行确认

  • 从实例数据生成测试数据

勾选标记图标进行确认勾选标记图标进行确认
勾选标记图标进行确认
Web 服务
勾选标记图标进行确认勾选标记图标进行确认

Java 开发
勾选标记图标进行确认勾选标记图标进行确认

角色相关产品工具DB2 Control Center (or ODS)Optim Development StudioRational Application DeveloperInfoSphere Data ArchitectRational Software Architect

正如前面所提到的,围绕 XML 数据的创建、使用和维护,存在着不同的责任,每个责任又有着相应的工具需求。下面的部分将解释如何选择工具来满足 XML 任务需求并将工具与所确定的数据库角色相关联。

选择哪个工具

面对大量的工具和重叠的功能,当有多个工具可提供所需功能时,为给定任务选择工具成为了一个挑战。可能不存在绝对 “正确” 的工具,但是为特定任务选择工具时,有两个因素必须予以重视:

  • 您是否已经很熟悉其中的一个工具,并已安装了该工具?如果有疑问,保留您所了解的那个。即使新工具可能会提供更优或者更易用的功能,也不必花费时间来购买、安装并学习新工具。
  • 作为您的广泛角色的一部分,还有哪些其他任务需要完成?例如,如果您需要查看或者编辑 XML 文档,除此之外,将主要进行 Java 应用程序开发,那么您可以考虑选择 RAD。另一方面,如果您具有相同的需求,但是您主要处理数据库对象(表、查询等等),那么您应当考虑选择 Optim Development Studio 或者使用 Control Center。

如果您在更宽泛的责任上下文中具有对 XML 工具功能的偶发需求,那么以上指导将会很有用。

然而,如果在某些时期,一组 XML 任务成为您的主要责任,那么能够为特定功能指定比其他工具中功能更高的优先级将更有意义。在这些情况下,您需要花一些时间来查找您所需的最重要的功能,并确定哪些工具能够简化这些任务的完成。在多数情况下,如果不是针对明确的任务,考虑专为处理 XML 而构建的工具将更有意义。

基于数据库用户角色推荐的 XML 工具

现在,我们已经回顾了当数据库用户处理 XML 数据时,所出现的任务会涉及哪些内容,让我们回过头来看一下各类角色及其 XML 活动,并重点强调最适合其 XML 需求的工具。

数据库管理员(DBA) — 数据库操作

  • XML 任务:创建并维护具有 XML 数据的表和视图;创建并调优 XML 索引;查询并查看 XML 文档;存储并管理 XML 模式文档。
  • 通用工具指导:DB2 Control Center、Optim Database Administrator。

数据库开发人员(数据库程序员) — 数据库访问开发

  • XML 任务:开发 XML 查询与存储过程;设计 XML 数据仓库。
  • 通用工具指导:Optim Development Studio。

软件开发人员 — 应用程序开发,以存储并检索 XML(以及其他)数据

  • XML 任务:编写高效从 DB2 数据库存储与检索 XML 数据的应用程序。
  • 通用工具指导:Rational Application Developer。

数据库架构师 — 数据库建模与物理布局

  • XML 任务:设计数据库模式,包括从 XML(XML 映射到关系结构)提取的 XML 列或者关系列。
  • 通用工具指导:InfoSphere Data Architect

软件架构师 —— 设计业务模型及应用程序架构

  • XML 任务:开发并维护 XML 模式和/或 XML 文档。
  • 通用工具指导:Rational Software Architect。

非 IBM XML 工具

在本文概述不同 IBM 工具中所提供的 XML 功能的同时,还有很多非 IBM 产品同样能提供 XML 功能。其中既有免费软件又有收费软件。本文不打算列出这些非 IBM 产品的特性与功能,但是其中总结了一些类别的工具,并针对每个类别给出了一些产品示例。这一清单旨在帮助用户增加了解,对特定产品的包含或遗漏,并不打算作为对该产品的建议指示。

  • XML 集成开发环境(IDE):这些工具旨在提供创建、维护和转换 XML 数据(同时包括实例和模式)所需的功能集。它们通常包含 XQuery 和 SQL/XML 开发或对其的扩展。流行的 XML IDEs 产品包括 Altova XMLSpy、SyncRO Soft <oXygen/> XML 编辑器和 Progress Software Stylus Studio。还有几个免费的 XML IDEs。其中有一些,比如 XMLSpy 和 Oxygen,也提供到 DB2 pureXML 及其他数据库的直接连接,以提取 XML 数据,运行查询,以及存储模式。
  • XML 编辑器:与 IDEs 类似,但具有更多专注于创建、编辑 XML 文档和/或架构的受限功能。不同复杂性的很多 XML 编辑器可免费获取。例如 XMLPad、XML Marker、XML Viewer、以及 XML Buddy。想要查看一个完整的(如果不是绝对多的)XML 编辑器清单,见 XML.com 上的清单(见 参考资料。)

结束语

遇到 XML 数据的数据库用户,有时需要工具来协助完成 XML 创建、查看、编辑、或者转换等相关任务。已经在 XML 方面进行增强的现有 IBM 工具能够提供这些功能。本文概述了多个不同的此类任务,并列出了对这些任务提供辅助的 IBM 产品。当数据库用户需要考虑处理 XML 相关的任务时,如何选择支持这些任务的产品成为了一个挑战。通常,没有哪一个工具能够提供所需的全部功能,因此需要多个工具。最好是通过考虑数据库用户的主要角色,并通过考虑尽量长远地发挥其 XML 功能的优势,来选择主要工具。最后,如果 XML 成为个人任务的主要部分,本文也概述了一些非 IBM 产品,比如 XML 编辑器和集成开发环境,这些都用于围绕 XML 数据的编辑、查看以及转换来提供 XML 功能,并可能成为此处所回顾的特定数据库产品的有益补充。


术语表

  • IDE:集成开发环境;用于开发的多个紧密集成的工具。
  • 模式:在 XML 中,描述 XML 文档所必须符合的一系列规则的文档。
  • XML:可扩展标记语言;一种用于灵活编码文档的语言。
  • XQuery:一种用于 XML 的查询语言。
  • XSD:XML Schema Definition 语言用于描述 XML 模式。

参考资料

学习

获得产品和技术

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Information Management, XML
ArticleID=619031
ArticleTitle=为 DB2 pureXML 用户提供的工具和 XML 功能
publish-date=01212011