内容


xfy 与 DB2 9 XML 数据解决方案,第 1 部分

使用 pureXML 发挥出数据的最大价值

xfy,一种 XML 应用程序平台

Comments

系列内容:

此内容是该系列 # 部分中的第 # 部分: xfy 与 DB2 9 XML 数据解决方案,第 1 部分

敬请期待该系列的后续内容。

此内容是该系列的一部分:xfy 与 DB2 9 XML 数据解决方案,第 1 部分

敬请期待该系列的后续内容。

处理非结构化数据 —— 缺少的拼图

在使用 XML 方面,很多公司的一个关键目标就是能够处理各种类型的、不能有效地存储在关系数据库(RDB)中的数据。这是一个重要的目标,因为一个企业中的大部分数据都不是结构化的,不能存储在常规的 RDB 中。据调查发现,一个企业中只有 10% 的数据是在 RDB 中管理的。这意味着企业中还有 90% 的信息没有得到系统化的管理或利用。大多数企业不能有效地利用那些非结构化数据。

很多 XML 的支持者一直期望 XML 可以很快帮助实现将这种非结构化数据转换成便于管理和利用的形式的目标。但是直到现在,这个目标的实现还缺少两块重要的拼图:

  • 一种能存储 XML 数据,并将其当作 XML 数据来操纵的数据库。
  • 一种用于开发本地 XML 应用程序的完善的工具。

然而,在 2006 年的夏季,第三代数据库 IBM DB2 9(代码名为 “DB2 Viper”)以及 Justsystems 公司的本地 XML 应用程序平台 “xfy” 作为这最后两块拼图出现了。

用于 XML 数据的 DB2 9 混合型数据库

DB2 9 是一种混合型数据库。除了具有 RDB 的功能以外,DB2 9 还具有 XML 数据库(XMLDB)的功能。DB2 9 可以将 XML 数据不作改变地存储为实际的 XML 数据。这是之前的 RDB 无法做到的,RDB 一般是通过将 XML 数据放进特定的表结构中来存储 XML 数据,而且只是简单地将数据作为大型字符串来处理。

DB2 9 可以使用 SQL 和 XQuery 来搜索关系数据和 XML 数据。除了使用 XQuery 搜索 XML 数据和使用 SQL 搜索关系数据外,用户还可以在同一个查询中同时搜索关系数据和 XML 数据。

相对于单模式的 RDB 来说,DB2 9 可以非常灵活地处理多种模式。例如,DB2 9 可以存储多种模式的 XML 数据,或者存储无模式的 XML 数据。这种模式灵活性使查询可以横跨不同的 XML 数据(例如具有不同模式的 XML 数据)进行搜索。这种多源搜索常被称作 “联邦搜索”。

一个搜索 —— 多个数据源

DB2 9 支持在具有不同模式的数据上进行联邦搜索。这大大扩展了企业利用那些没有被有效地存储在关系 RDB 中的数据的能力。

例如,考虑一个企业使用的各种不同类型的数据,如电子邮件、订单或建议书。在过去,这些在性质上各不相同的数据甚至常常不是存储在相同的 RDB 中,即使是存储在相同的 RDB 中,这种 RDB 也只是简单提供低级的搜索功能。但是现在,可以将 XML 格式的数据存储在 DB2 9 数据库中,对所有数据都可以进行查询。这使得用户可以在一个查询中搜索多种类型的数据。例如,用户可以提取与一个客户相关的所有数据,即使是具有不同模式的结构化的数据。

图 1. 在一个查询中访问多种模式
在一个查询中访问多种模式
在一个查询中访问多种模式

细心的读者可能察觉到,一个联邦搜索返回的 XML 数据可能以多种多样的、不可预测的 XML 词汇的形式出现。事实正是如此。这就使我们将目光转移到缺少的第二块拼图上:xfy,一个用于处理不可预测的、未知的 XML 词汇的平台。

xfy 应用程序平台:提取 XML 中的内在价值

xfy 是一个用于构建和执行本地 XML 应用程序的平台。它能处理所有类型的 XML 数据,甚至包括 XML 复合文档,即使对 XML 词汇所知不多,也难不倒它。xfy 是用 Java™ 实现的,因此它可以在各种不同环境下运行,例如 Windows、Linux 和 Mac OS X。

xfy 可以分析从数据库返回的未知 XML 词汇,并自动为结果生成适当的视图。与之前的数据库应用程序不同,xfy 无需用户编写任何程序,就可以显示未知的 XML 词汇。而且,xfy 有一组丰富的组件可用于数据可视化(例如将图表和电子表格显示为散点图)。这些组件提供了强大的工具,以有用的可视化格式显示 XML 数据。

图 2. xfy 中的数据可视化
xfy 中的数据可视化
xfy 中的数据可视化

可以使用 xfy 来创建复合 XML 文档,在这种文档中,从数据库返回的 XML 数据被嵌入在一个 XHTML 文档中。xfy 可以构建包含对一个数据库发出的搜索查询本身以及从数据库返回的搜索结果的 XML 文档。这使 xfy 能够有效地构建动态的 XML 文档。当数据库被更新时,XML 文档中的搜索结果也随之更新,而当编辑搜索查询时,XML 文档本身也将被重新生成。

在正确的时机将正确的信息提供给正确的人

除了显示搜索结果外,xfy 还可以在不需要用户编写程序的情况下,自动生成和发出搜索查询。用户可以使用 GUI 来生成和发出搜索查询(无论目标是关系数据还是 XML 数据),从而保证在正确的时机将正确的信息交付给正确的人。

除了在不需要编程的情况下生成和发出搜索查询外,xfy 还可以在不需要编程的情况下定义视图。开发人员可以使用 GUI 为已有的 XML 模式定义一个视图,从而能够在很短的开发周期内开发程序和重复地作出修改。

图 3. 创建 XML DB 查询
创建 XML DB 查询
创建 XML DB 查询
图 4. XML DB 查询
XML DB 查询
XML DB 查询

xfy 可以如实使用 XML 数据,而不必将其转换成其他类型的数据。通过使用 DB2 9 与 xfy 这对组合,可以大大简化服务器端和客户端的应用程序开发。

图 5. DB2 9 与 xfy 平台
DB2 9 与 xfy 平台
DB2 9 与 xfy 平台

pureXML 加本地 XML 产生的化学反应

DB2 9 的到来为非结构化的、不能存储在 RDB 中的这 90% 的企业数据注入了新的活力。直到现在,这种类型的数据在企业中还一直是种摆设:没有得到管理,也没有被利用。但是现在,这些信息的价值和对它们的使用上有望发生巨大的变化。而且,xfy 的到来将大大简化 XML 应用程序开发。开发人员将可以快速开发信息结构,以满足规范的变化,并且也将能够提供满足用户需要的、真正易于使用的系统。

pureXML DB2 9 加上本地 XML xfy,是创建真正的 XML 解决方案并为用户充分发掘 XML 内在价值的理想组合。本系列的下一篇文章将帮助您踏入这一新的领域,并试着用 xfy 和 DB2 9 创建一个 XML 文档应用程序。


相关主题


评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Information Management, XML
ArticleID=219255
ArticleTitle=xfy 与 DB2 9 XML 数据解决方案,第 1 部分: 使用 pureXML 发挥出数据的最大价值
publish-date=05102007