如何为DB2 Cube Views构建元数据桥
2008-05-15 14:58:15 来源:WEB开发网使用者或生产者
桥可以产生或使用 DB2 Cube Views 元数据。人们常常期望桥是双向的,而且通常先实现一个方向,然后再实现另一个方向。在这个实例中,我们建议先针对 两个方向理解和记录映射,即使只马上实现了一个方向,也是如此。通过定义两个方向的映射,将有助于确保映射是合理而完整的。
映射什么
Cube Model 是 DB2 Cube Views 中丰富的元数据对象,它通常是桥进行映射过程中的对象。有时候,桥还会与 Cube Model 一起产生或使用 Cube 对象。
将元数据推入 DB2 UDB 的桥并不总是具有足够的信息来创建 Cube Model。要创建 Cube Model,桥通常需要知道哪些表是事实表,哪些表是维表。如果桥没有这些信息,那么它仍可以创建象 Attribute 和 Join 之类比较简单的对象,这些对象仍然要增加值。
增量更改
支持增量元数据更改是桥在企业仓库环境中运用的一个重要特性。
所有多维数据视图元数据对象都有一个“修改时间”,如在对象的 XML 表示中有 modifyTime="2003-03-25T09:54:51" 。使用这来确定已经更改了哪些元数据对象。API 没有提供一种方法来查询自某一时间戳记以来更改的所有对象,所以您必须读取一组对象,然后检查每个对象的修改时间。
使用这个 API 的 altER 或 IMPORT 操作,将元数据更改推入 DB2。通过使用 IMPORT 操作,可以决定是否要覆盖已经更改的对象。还可以在实际执行导入之前发现哪些对象有冲突。请参阅 Setup and User's Guide中详细描述的 IMPORT“方式”。
编程语言
如果映射是从 XML 到 XML 的映射,则常常考虑使用 XSLT。但要知道,有时候,映射所需的复杂逻辑难以用 XSLT 实现。我们所知道的大多数桥都是用 Java 或 C/C++ 实现的。
XML 解析器
可以选择使用 Xerces 解析器。有关信息,请参阅 http://xml.apache.org/xerces-c/index.html。
API 还是 XML 文件
不管是产生还是使用 DB2 Cube Views XML,桥都需要决定是调用 API 还是处理 XML 文件。这两种方法各有优缺点。
使用 XML 文件的优缺点
使用 XML 文件的优点是桥可以独立于 DB2 Cube Views 运行,如在另一个客户机或服务器机器上运行。
使用 XML 文件的缺点是:
当使用多维数据视图 XML 时,您不能确保元数据是有效的并与 DB2 中的关系模式同步。
当产生 DB2 多维数据视图 XML 时,您不能确保稍后可以成功地导入元数据。
使用 API 的优缺点
使用 API 的优点是:
桥可以使用 VALIDATE 操作来确保它从 DB2 读取的任何元数据都是有效的。
桥可以通过查询 DB2 系统目录表来读取有关引用表和列的附加信息。
桥可以查看 DB2 中的所有元数据。
API 的缺点是实现桥所花的时间会较长,因为您需要添加代码来调用 DB2 Cube Views API。程序将需要产生操作 XML 并解析响应 XML。
实现步骤
下面是如何成功地设计并实现桥的基本概述:
产生一个设计文档,该文档包括详细的映射。
针对实际的测试案例设计原型并测试映射。根据需要,修订设计。
实现桥(产品级代码)。
对桥执行严格的 QA。
经验告诉我们,典型的桥项目需要三个以上的人月来完成。一个月左右的时间用于设计,至少有一个月的时间用于实现,测试大致需要一个月。建议用户进行 Beta 版测试。
结束语
IBM 鼓励商业智能工具和解决方案的开发人员能够使他们的产品与 DB2 UDB 的 DB2 Cube Views 功能部件相互操作。对于许多 OLAP 工具和应用程序,与 DB2 Cube Views 的集成需要通过使用基于 XML 的存储过程接口来读取或创建元数据。正如我们所看到的,在我们熟悉了存储过程在输入和输出中所使用的 XML 语法之后,该接口就很简单了。
在我们对 API 感到满意之后,就可以从事将 DB2 Cube Views 元数据映射到其它格式的工作。有关为 DB2 Cube Views 构建元数据桥方面,我们已经分享了许多应牢记的考虑事项。对元数据进行合理映射的桥将受到解决方案构建者的高度赞扬,因为一个好的桥将为他们节省构建和部署解决方案的时间。
更多精彩
赞助商链接