映射演练
做一个映射演练是设计桥的重要的第一步。做这个演练的设计师或者开发者必须有关于DB2 Cube View元数据对象模型和另一种元数据对象模型的透彻的工作知识。
如表二所示,每个DB2 Cube View对象当做一个映射的时候,都有通用属性需要研究。
表1 DB2 Cube View对象的通用属性
属性 |
注意 |
模式 |
当映射到DB2 Cube View的时候,所有新的对象通常被放入一个模式中。但是Cube View对象被允许引用不同的模式中的其它Cube View对象。DB2 Cube View中的每个对象的完整名称是它的模式加上它的名称,比如MYSCHEMA.MYATTRIBUTE。模式可以不长于30字节。 |
名称 |
每个DB2 Cube View对象类型都有自己的名称空间,除了Attribute和Measures共享相同的名称空间。比如,可以有一个Attribute和Join有相同的完整名称。到DB2 Cube View的桥通常必须生成目标对象的名称。名称不长于128字节。 |
业务名称 |
最大128字节。 |
注释 |
最大 254字节 |
构建器 |
当映射到DB2 Cube View的时候不需要。 |
构建期 |
当映射到DB2 Cube View的时候不需要。 |
修改器 |
当映射到DB2 Cube View的时候不需要。 |
修改期 |
当映射到DB2 Cube View的时候不需要。 |
DB2 Cube View对象模型必须被研究并且与将要映射的元数据相比较。注意元数据之间的差别可能导致元数据在被映射的时候丢失。如果元数据桥是双向的,那么判断元数据返回时被修改的程度。对于大部分的桥,不建议返回元数据。表3有一些对象类型的注意事项需要牢记。当映射到DB2 Cube View时,输出元数据XML必须有效。它必须在语法上是正确的。桥应该它们输出的DB2 Cube View元数据XML是否符合语法规则,通过验证XML和模式文件db2md_metadata.xsd。此外,输出元数据必须遵守DB2 Cube View指定的所有元数据有效性规则。在DB2 Cube View中,有三级的有效性检查。当映射到DB2 Cube View时,遵守"Base"规则就足够了。一个从DB2 Cube View读取数据的桥可能坚持让元数据服从"Cube Model completeness"元数据规则。请参看用户手册关于DB2 Cube View元数据验证等级的详细资料。
表2 映射不同的对象类型的注意事项
对象类型 |
映射注意事项 |
Attribute |
SQL表达式模板是最难映射的属性,因为它常常需要分析表达式。此外,一个来自DB2 Cube View的桥需要处理引用其它Attributes的Attributes,并且递归遍历所有的Attributes以判断用于一个给定的Attribute的最终SQL表达式。当映射到一个Attribute的时候,数据类型属性不是必需的;当属性被创建的时候,由DB2 Cube View来决定。 |
Join |
Join在映射到DB2 Cube View时被创建,因为它们可以获取构建维度模型和Cube模型所需要的结构信息。 |
Attribute 关系 |
层次的一部分。在更复杂的Cube模型中可找到。 |
Measure |
和Attribute相同的问题(也就是说,其SQL表达式模板很难映射)。桥在支持很复杂的measure时,通常有一些限制。 |
Facts |
带有相同维度的一套Measures。注意需要映射Attribute和Join。 |
Dimension |
当创建Dimension时,确定你包含了所有的Attributes。注意Hierarchy和Join是可选项。 |
Hierarchy |
注意Attribute列表是顺序的。注意并不是所有的类型和配置的整合都是被允许的。桥有时对可被映射的层次类型有限制。 |
Cube Model |
一个桥可以映射的顶级对象。一个到DB2 Cube View的桥如果可能的话应该创建一个Cube Model对象。 |
Cube (和 Cube Facts, Cube Dimension, Cube Hierarchy) |
映射为一个Cube Model的一部分。 |
使用者或生产者
桥可以要么产生要么使用DB2 Cube View元数据。通常要求一个双向的桥,一个方向在另一个方向之前实现。在这一情况下,我们建议首先了解用于双向的映射,即使只有一个方向的映射被立即实现。通过定义双向的映射,你将保证映射合理且完整。 |
阅读(316) | 评论(0) | 转发(0) |