Cognos - 元数据模型中的关系
关系用于在元数据模型中创建对多个对象的查询。关系可以是双向的,如果不创建关系,对象就是在元数据模型中没有用的单独实体。
元数据模型中的每个对象都使用数据源中的主键或外键连接。您可以在元数据模型中创建或删除关系以满足业务需求。
可能存在不同的关系,其中一些是 −
一对一 − 当一个查询主题的实例与另一个实例相关时。例如:每个客户都有一个客户 ID。
一对多 − 当一个查询主题实例与多个实例相关时,就会发生这种关系。例如:每个医生都有许多病人。
多对多 −当查询主题的许多实例与多个实例相关时,就会发生这种关系。例如:每个病人都有许多医生。
基数概念
它被定义为两个查询主题中每个查询主题的相关行数。基数的使用方式如下 −
- 星型模式中的循环连接
- 优化对数据源的访问
- 避免重复计算事实数据
在使用关系数据库作为数据源时,可以考虑以下规则来定义基数 −
- 主键和外键
- 匹配查询项名称表示唯一索引列
- 匹配查询项名称
定义基数的最常见方式是使用主键和外键。要查看已导入的关键信息,请右键单击查询主题 → 编辑定义。您可以从数据源导入多对多关系、可选关系和外连接。
元数据模型中的关系符号
在框架管理器中,关系由 Merise 符号 表示。此符号的第一部分表示此关系的连接类型。
- 0..1 表示零个或一个匹配
- 1..1 表示一对一匹配
- 0..n 表示零个或无匹配
- 1..n 表示一个或多个匹配
- 1 − 包含两个对象的所有匹配行的内连接。
- 0 −包含来自两者的所有对象的外部连接,包括不匹配的项目。
创建或修改关系
创建关系或组合未在元数据导入中连接的逻辑相关对象。您可以手动创建对象之间的关系,也可以根据所选条件自动定义对象之间的关系。
要创建关系,请使用 CTRL 键选择一个或多个查询项、主题或维度。然后转到操作菜单 → 创建关系。
如果这是有效的关系,框架管理器将创建该关系的快捷方式。然后,您可以单击"确定"按钮。
在导入元数据后创建关系后,您还可以在框架管理器中修改关系或基数。
要编辑关系,请单击关系,然后从操作菜单 → 单击编辑定义。
从关系表达式选项卡 → 选择查询项、基数和运算符。
要创建其他连接,请转到关系表达式选项卡 → 新建链接并定义新关系。
要测试此关系,请转到关系 SQL 选项卡 →要返回的行 → 测试。
单击"确定"按钮。
创建关系快捷方式
关系快捷方式定义为指向现有关系的指针,用于重用现有关系的定义。当您对源关系进行任何更改时,它们都会在快捷方式中自动更新。关系快捷方式还用于解决查询主题之间的模糊关系。
每当您创建关系并且这两个条件都为真时,框架管理器都会询问您是否要创建关系快捷方式。
- 新关系至少有一端是快捷方式。
- 原始对象之间存在关系。
转到操作菜单 → 创建关系。
如果这是有效的关系,框架管理器将创建该关系的快捷方式。单击"是"。出现一个列表,其中列出所有关系,其中一端是模型对象,另一端是另一个模型对象或另一个模型对象的快捷方式。
单击"确定"。
创建查询主题
查询主题定义为具有固有关系的一组查询项。查询主题可用于自定义使用框架管理器检索的数据。
以下是框架管理器中的查询主题类型 −
数据源查询主题 − 这些基于 SQL 语句定义的关系元数据,并在将元数据导入模型时为每个表和视图自动创建。
注意 −数据源查询主题每次仅引用一个数据源的数据,但您可以直接编辑定义检索数据的 SQL 来编辑查询主题。
模型查询主题 − 它们不是直接从数据源创建的,而是基于其他查询主题或维度中定义的查询项。使用模型查询主题,您可以创建更抽象和业务的数据源视图。
存储过程查询主题 − 它们是在从关系数据源导入过程时创建的。 IBM Cognos Framework Manager 仅支持用户定义的存储过程,不支持系统存储过程。
如何创建数据源查询主题?
从操作菜单 → 创建 → 查询主题。
输入新查询主题的名称。
单击数据源 → 确定以打开新查询主题向导。
按照步骤操作,直到出现完成按钮 →完成
右键单击查询主题 → 编辑定义。单击SQL 选项卡 → 可用数据库对象框,将对象拖到 SQL 框。
您还可以插入数据源引用、插入宏、嵌入计算和嵌入过滤器。
从列表中选择操作并单击确定。
目的 | 操作 |
---|---|
粒度控制 | 决定因素选项卡 |
测试查询主题 | 测试选项卡 |
查看 SQL | 查询信息选项卡 |
从数据源查看系统表 | 显示系统对象复选框 |
编辑 SQL
当您编辑任何关系数据库源、创建或查询关系数据库时,后台都会使用 SQL。您可以使用以下选项 −
- Cognos SQL
- 本机 SQL
- 传递 SQL
要编辑模型查询主题的 SQL,请从查询信息选项卡复制 SQL 并粘贴到新的数据源查询主题。可以将模型查询主题转换为数据源查询主题。
- 单击数据源查询主题和操作菜单 → 编辑定义。
- 单击 SQL 按钮,拖动对象或输入所需的 SQL。
- 单击确定。
更改 SQL 类型
您可以选择定义数据源查询主题时要使用的 SQL 类型。在考虑 SQL 类型时应考虑这些因素 −
SQL 类型 | 优点 | 缺点 |
---|---|---|
Cognos SQL | 性能提升 适用于所有支持的数据库 |
不支持非标准 SQL |
本机 SQL | 性能优化 特定于数据库 |
SQL 不适用于不同的数据库。 您不能使用数据源不支持的 SQL子查询。 |
传递 SQL | 数据库支持的任何 SQL | 没有框架选项 管理器优化 自动性能 |
另请注意,无法根据 OLAP 数据源更改查询主题的 SQL 类型。
要更改 SQL 类型,请转到要更改的查询主题。
转到操作菜单 →编辑定义并转到查询信息按钮。
转到选项 → SQL 设置选项卡。
要更改 SQL 类型,请单击 SQL 类型列表。然后单击确定。