Cognos – 元数据模型中的关系

Cognos – 元数据模型中的关系


关系用于在元数据模型中的多个对象上创建查询。关系可以是双向的,并且无需创建关系,对象是单独的实体,在元数据模型中没有用。

元数据模型中的每个对象都使用数据源中的主键或外键连接。您可以在元数据模型中创建或删除关系以满足业务需求。

可能存在不同的关系,其中一些是 –

  • 一对一– 当一个查询主题的实例与另一个实例相关时。例如:每个客户都有一个客户 ID。

  • 一对多– 当查询主题的一个实例与多个实例相关时,就会发生这种关系。例如:每个医生都有很多病人。

  • 多对多– 当查询主题的许多实例与多个实例相关时,就会发生这种关系。例如:每个病人都有很多医生。

基数概念

它被定义为两个查询主题中每一个的相关行数。基数以以下方式使用 –

  • 星型模式中的循环联接
  • 优化数据源访问
  • 避免重复计算事实数据

使用关系数据库作为数据源时,可以考虑以下规则定义基数 –

  • 主键和外键
  • 匹配查询项名称表示唯一索引的列
  • 匹配查询项名称

定义基数的最常见方法是使用主键和外键。要查看导入的关键信息,请右键单击查询主题 → 编辑定义。您可以从数据源导入多对多关系、可选关系和外部联接。

元数据模型中的关系符号

在框架管理器中,关系由Merise 表示法表示此符号的第一部分表示此关系的连接类型。

  • 0..1 代表零个或一个匹配
  • 1..1 代表一对一匹配
  • 0..n 代表零或不匹配
  • 1..n 代表一个或多个匹配项
  • 1 – 来自两个对象的所有匹配行的内部连接。
  • 0 – 与来自两者的所有对象的外部连接,包括不匹配的项目。

创建或修改关系

创建关系或组合未加入元数据导入的逻辑相关对象。您可以手动创建对象之间的关系,也可以根据选定的条件自动定义对象之间的关系。

要创建关系,请使用 CTRL 键选择一个或多个查询项目、主题或维度。然后转到操作菜单 → 创建关系

如果这是一个有效的关系,则框架管理器希望创建该关系的快捷方式。然后,您可以单击“确定”按钮。

F_销售

在元数据导入后创建关系后,您还可以在框架管理器中修改关系或基数。

要编辑关系,请单击关系,然后从操作菜单 → 单击编辑定义

从“关系表达式”选项卡 → 选择“查询项”、“基数”和“运算符”

关系定义

要创建额外的联接,请转到关系表达式选项卡 → 新建链接并定义新关系

要测试此关系,请转到关系 SQL 选项卡 → 要返回的行 → 测试

关系 SQL 选项卡

单击确定按钮。

创建关系快捷方式

关系快捷方式被定义为指向现有关系并重用现有关系定义的指针。当您对源关系进行任何更改时,它们会在快捷方式中自动更新。关系快捷方式还用于解决查询主题之间的不明确关系。

每当您创建关系并且这两个条件都为真时,Framework Manager 会询问您是否要创建关系快捷方式。

  • 新关系的至少一端是一条捷径。
  • 原始对象之间存在关系。

转到操作菜单 → 创建关系

如果这是一个有效的关系,框架管理器想要创建关系的快捷方式。单击是。将出现一个包含所有关系的列表,其中一端是模型对象,另一端是另一个模型对象或另一个模型对象的快捷方式。

单击确定。

创建查询主题

查询主题被定义为一组具有内在关系的查询项。查询主题可用于自定义它们使用框架管理器检索的数据。

以下是框架管理器中的查询主题类型 –

  • 数据源查询主题– 这些基于 SQL 语句定义的关系元数据,并在您将元数据导入模型时为每个表和视图自动创建。

    注意– 数据源查询主题一次只引用一个数据源的数据,但您可以直接编辑定义检索数据的 SQL 以编辑查询主题。

  • 模型查询主题– 它们不是直接从数据源创建的,而是基于其他查询主题或维度中定义的查询项目。使用模型查询主题,它允许您创建数据源的更抽象和业务视图。

  • 存储过程查询主题– 当从关系数据源导入过程时创建它们。IBM Cognos Framework Manager 仅支持用户定义的存储过程,不支持系统存储过程。

新建查询主题

如何创建数据源查询主题?

操作菜单 → 创建 → 查询主题

操作菜单

输入新查询主题的名称。

单击数据源→确定打开新的查询主题向导

数据源

按照步骤操作,直到出现完成按钮 → 完成

右键单击Query Subject → Edit Definition单击SQL 选项卡 → 可用数据库对象框,将对象拖到 SQL 框

您还可以插入数据源引用、插入宏、嵌入计算和嵌入过滤器。

从列表中选择操作并单击确定。

查询信息

Purpose 行动
Granularity Control 决定因素选项卡
To test query subject 测试标签
To view SQL 查询信息选项卡
To view system tables from data source 显示系统对象复选框

编辑 SQL

当您编辑任何 Relation 数据库源、创建或查询 Relation 数据库时,SQL 将在后台使用。您可以使用以下选项 –

  • Cognos SQL
  • 本机 SQL
  • 通过 SQL

要编辑模型查询主题的 SQL,请从查询信息选项卡复制 SQL 并粘贴到新的数据源查询主题。可以将模型查询主题转换为数据源查询主题。

  • 单击数据源查询主题和操作菜单 → 编辑定义
  • 单击 SQL 按钮,拖动对象或键入所需的 SQL。
  • 单击确定。

编辑 SQL

更改 SQL 类型

您可以在定义数据源查询主题时选择要使用的 SQL 类型。在考虑 SQL 类型时应考虑这些因素 –

SQL Type 优势 坏处
Cognos SQL

提高性能

在所有支持的数据库上工作

不支持非标准 SQL
Native SQL

性能优化

特定于数据库

SQL 不适用于不同的数据库。

您不能使用数据源不支持子查询的 SQL。

Pass Through SQL 数据库支持的任何 SQL

没有框架选项

经理优化

自动执行

另请注意,无法根据 OLAP 数据源更改查询主题的 SQL 类型。

要更改 SQL 类型,请转到要更改的查询主题。

转到操作菜单 → 编辑定义,然后转到查询信息按钮

SQL 设置选项卡

转到选项 → SQL 设置选项卡

要更改 SQL 的类型,请单击 SQL 类型列表。然后,单击确定。

觉得文章有用?

点个广告表达一下你的爱意吧 !😁