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