内容


Cognos BI的示样解析,第一部分:CQM(兼容查询方式)模式下的示样

Comments

Cognos BI 作为一个强大的 BI(Business Intelligence,商业智能)套件,涵盖了非常丰富的报表生成、分析、记分卡生成,以及事件管理等完整工具集合。目前 Cognos BI 已经过渡到 Cognos Analytics,提供的最新版本为 Cognos Analytics 11,在用户体验和所提供的功能上都有了比较大的改变。但目前 Cognos BI 10.2.2 还是最为流行和稳定的版本,保留了最全的工具集,并且也与以前的版本有最好的兼容性。所以本文的示样 解析包含了 Congnos BI 10.2.2 的 Samples 安装包中的例子。

第一小节简单介绍了当前 Cognos BI 所支持的数据包模式,以及罗列出示样中所包含的展示实体类型;第二个小节是介绍各个目录的示样,罗列出各个目录的结构和其包含的各种展示实体。这是用户所看到的在 IBM Cognos Connection 界面显示的内容;而第三小节将介绍这些 示样 背后的各个数据包 数据源 多维数据集 模型 ,以及它们之间的关系,从而能站在一个整体的高度来理解所有这些示样 。大家可以看到,实际上数据包 起到了关键的桥梁作用,是连接第二小节各个目录中示样 展示实体和第三小节所涉及的数据源多维数据集模型的关键对象----数据包是创建示样展示实体的基础,也是数据源多维数据集模型的目标对象

数据包模式和实体类型

如何安装这些示样 请参考 IBM Knowledge Center 的链接:Samples for IBM Cognos Business Intelligence 10.2.2,而这里假设你已经将这些示样 安装好了。这样,会在 IBM Cognos Connection 的 Public Folders 下有多个以 Samples 开头的目录:

图 1 包含示样的目录结构

(Fig_Folder_Samples)

根据所需要的 Cognos 报表服务器的运行模式,可以将这些示样分为两类:

  • 使用 DQM Dynamic Query Mode 动态查询方式 ) 运行模式的示样,包括目录 Sample_DQ 和 Sample_Dynamic_Cubes
  • 使用 CQM Com patible Query Mode 兼容查询方式 ) 运行模式的示样,包括目录 Samples,Samples_Drillthrough,Samples_PowerCube,Samples_PowerPlay 和 Samples_Prompt_API

因为 DQM 要求:

  • 当使用 Framework Manager 来创建新模型 时,要求使用 DQM 的方式来建立;
  • 在 Framework Manager 中发布数据包 时,也要求指定使用 DQM 方式;
  • Cognos 报表服务器需要以 DQM 运行,也就是在设置服务器的 IBM Cognos Configuration 时,将 Environment 目录中的参数"Report Server execution mode"设置为 64-bit;
  • 在 Cognos 服务器上建立并使能 JDBC 类型的数据库连接,这通过 Web 界面的 Launch 菜单中 IBM Cognos Administration 选项进入,选择标签页 Configuration 及 Data Source Connections 项来设置;

所以,DQM 和 CQM 会有完全不同的一套数据源 模型 数据包 ,以及报表 等展示实体。在这篇文章中,我们只介绍 CQM 运行模式的这些示样 ;而 DQM 会在未来的文章中介绍。

下面的图中显示了在这些示样目录中所包含的各种实体的类型

图 2 示样中的实体类型及其创建工具

(Fig_Types_Tools)

左边是实体的类型,这些图例会在后面各个小节的示样 目录的结构图中显示,而某个示样 目录可能只包含部分类型。而右边是 IBM Cognos Connection 界面上 Launch 菜单所显示的工具选项,箭头连线则表示了用于创建左边的实体类型而需要的 Cognos 工具。

各个示样目录的介绍

Samples 目录

图 3 Samples 目录结构和包含的各种展示实体

(Fig_Samples)

以上是 Samples 目录下所有子目录和报表 等展示实体的结构。Model 子目录下 4 个数据包 实际也是 4 个子目录,而这 4 个子目录下的报表 等展示实体则分别使用了各自父目录数据包 。Model 子目录下其他 3 个子目录则是按照不同主题功能来组织的目录:

  • Accessible Report Studio Reports:支持辅助功能的报表示样,提供给残障人士使用;
  • Cognos Workspace Samples:子目录下全部是 Cognos Workspace 的示样
  • Interactive Samples:都是交互式的示样,通过增加一些 JavaScript 的代码,扩展报表能够捕捉到鼠标移动聚焦等操作,来显示一些特定内容

以上子目录中展示实体所使用的数据包 在前面的小方块中备注。最后,与 Model 平级的目录 Sample Template 中的展示实体所使用的数据包 也在前面备注了。

这里的 4 个数据包 是由 Framework Manager 的模型 发布的。Report template,Active Report 和 Report 都使用 Report Studio 创建和编辑,只是不同的小类型而已。Query 需要用 Query Studio 来创建和编辑。Agent 则使用 Event Studio 来创建和编辑。而 Workspace 需要 Cognos Workspace 来创建和编辑。

应当注意的是,除了 Report template,其它的 Active Report,Report,Query 和 Agent 都需要依赖一个数据包 ;而 Workspace 中可嵌入多个小的独立显示单元,可以为这些显示单元选择不同的数据包 。另外,工具 Cognos Workspace Advanced 可以打开所有的 Report Studio 创建的实体,这里包括 Report template,Active Report 和 Report;实际上,在 Cognos Analytics 11 已经将工具 Cognos Workspace Advanced 和 Report Studio 合并成为一个工具了。

以上工具的用户指南可以分别参考 IBM Knowledge Center 的链接:Report Studio, Query Studio, Event Studio, Cognos Workspace, Cognos Workspace Advanced

右侧有红色圆形的 4 个报表用作了 Cognos Transformer 模型 Employee expenses 的数据源 ,这将在后面专门讲解数据源的小节来说明。

Samples_PowerCube 目录

图 4 Samples_PowerCube 目录结构和包含的各种展示实体

(Fig_Samples_PowerCube)

这个目录与上一个小节的 Samples 目录有类似的结构。但是,这里的 2 个数据包与 Samples 目录中的 4 个数据包 有不同的生成方式——它们是用 Cognos Transformer 生成的 PowerCube 文件(*.mdc)所构建的 PowerCube 数据源 产生的。实际上在 Cognos Transformer 的模型文件(*.mdl)中除了定义 PowerCube 文件(*.mdc)的命名外,也可以定义数据源 数据包 ,这样就可以直接通过 Cognos Transformer 应用程序直接产生相应的 PowerCube 数据源 数据包 。这也将在后面有关数据源架构和关系的小节中详细说明。

这个目录内又有两种新的展示实体。Analysis 需要用 Analysis Studio 来创建和编辑,而 PowerPlay report 则需要用 PowerPlay Studio 创建和编辑。这两种 Studio 的用户指南分别参考 IBM Knowledge Center 的链接:Analysis StudioPowerPlay Studio

PowerPlay Studio 实际上是在 IBM Cognos Business Intelligence 中引入的 IBM Cognos Series 7 PowerPlay Web 接口。其和 Analysis Studio 的主要区别在于:

  • Analysis Studio 提供了深入的比较分析,而 PowerPlay Studio 不提供;
  • 尽管 Analysis Studio 提供了指导性的探索,但 PowerPlay Studio 的探索体验更加丰富;
  • Analysis Studio 和 PowerPlay Studio 之间最大的区别则是 Analysis Studio 使得信息的分析可以独立于数据存储位置。 这意味着 Analysis Studio 既可以分析和报告联机 分析处理 (on-line Analytical Processing, OLAP)数据源 ,也可以使用维度可知 关系型数据源 (Dimensionally-Aware Relational Data source)。

参考 2.1 小节的数据包类型,这里的 OLAP 数据源就是指 Cognos Transformer 生成的 PowerCube 类型的数据包 ,而维度可知的关系型数据源则是指 DMR 模型所发布的数据包 ---- Analysis Studio 可使用 analysis 型cube 型数据包 ,而 PowerPlay Studio 只能使用 cube 型数据包 ,但这两种 Studio 都不能使用 query 型的数据包

Samples_PowerPlay 目录

图 5 Samples_PowerPlay 目录和包含的各种展示实体

(Fig_Samples_PowerPlay)

本目录下所有的展示实体都是 PowerPlay report,都需要用 PowerPlay Studio 来创建和编辑。

而这里的两个数据包 也与前面不同。其中 great_outdoors_7 (cube)是从老版本的 mdc 文件 great_outdoors_7.mdc 所建立的 PowerCube 数据源 生成的。而 great_outdoors_sales_en (cube)则与前面 Samples_PowerCube 目录中的 Great Outdoors Sales (cube)来自相同的数据源 great_outdoors_sales_en,即相同的 great_outdoors_sales_en.mdc 文件,而生成了两个不同名字,但有相同内容的不同数据包 。在数据源小节可以看到它们的关系。

本目录与上一个目录虽然都用 PowerCube 数据源 生成数据包 来创建展示实体,但它们区别就像目录名所描述的:Samples_PowerCube 显示了用各种展示实体来使用 PowerCube 的数据包 ,包括了 Analysis,Report,以及 PowerPlay report;而 Samples_PowerPlay 则仅仅使用了实体类型 PowerPlay report 来展示。

Samples_Drillthrough 目录

图 6 Samples_Drillthrough 目录和包含的各种展示实体

(Fig_Samples_Drillthrough)

这个目录下所有的数据包 都是在前面的目录中定义过的:

  • GO Data Warehouse (analysis)和 GO Data Warehouse (query)与 Samples 目录中的数据包 相同
  • Sales and Marketing (cube)与 Samples_PowerCube 目录中的数据包 相同

另外,有两个隐藏的 reports(图中灰色项),用作 Drill-through 的 detail reports。

而比较特别的是在 GO Data Warehouse (analysis)的数据包 的路径下有一个 Drill-through definition:ReportDrill,作用于整个 GO Data Warehouse (analysis)及其子目录中的展示实体。

图 7 Drill-through 的定义示例

(Fig_Drillthrough_Definition)

但需要你从 IBM Cognos Connection 切换到 Drill-through Definitions 才能看到这个定义:

图 8 Drill-through 的菜单项

(Fig_Drillthrough_Menu)

这个例子是从 Cognos 8 继承过来的,详细的的使用方法请参考 Cognos 8 文档的相关页面:Example - Run a Report

Samples_Prompt_API 目录

图 9 Samples_Prompt_API 目录和包含的各种展示实体

(Fig_Samples_Prompt_API)

从版本 10.2.1 开始,Cognos BI 提供了 JavaScript 的 Prompt API。这为用户定制交互的提示 界面提供了非常大的方便,否则需要用户自己通过网页的文档对象模型 (DOM: Document Object Model)的基础 JavaScript 代码或 jQuery 库来实现。

这里的 GO Sales (query)也是在 Samples 目录下出现过的数据包 。 这个数据包 目录下面的各个报表 都包含了使用 Prompt API 的实例。

想了解更多关于 Prompt API 的概念和用法,请参考 IBM Knowledge Center 文档:Prompt API for IBM Cognos BI

示样的数据包以及数据源、模型和多维数据集

数据包类型

如前所述,所有示样 的展示实体都是基于数据包 来创建的。而这里所涉及到的数据包 有三类,分别在 数据包名字后面的括号内注明了 query,analysis 和 cube:

  • Query: 通过 Cognos Framework Manager 构建模型 ,全部使用查询主题 ,然后发布到 Cognos 服务器的数据包 。而这样的模型建立在关系型数据库上,构成了关系视图
  • Analysis: 同样是在 Cognos Framework Manager 构建的模型 中,但使用了常规维度 度量维度 ,即按维度建模的关系 (DMR,dynamically modeled relational)模型技术发布到 Cognos 服务器的数据包。DMR 只能说是一种关系型数据库的维度视图
  • Cube: 通过 Cognos Transformer 生成 PowerCube 的 mdc 文件,然后在 Cognos 中用这些文件配置基于 PowerCube 的数据源,再通过数据源 创建数据包 。PowerCube 是一种带预先汇集的基于文件的 MOLAP 多维数据集 (File-based MOLAP cube with pre-aggregation);
图 10 三种类型数据包的比较

(Fig_Package_Types)

上图中从左至右分别是 query、analysis 和 cube 类型的数据包 在 Report Studio 中 Source 视图显示的情况。可以看出,query 类型的数据包 与 analysis 和 cube 类型的数据包 有明显的不同:

  • Query 类型的数据包 使用 Framework Manager 来设计和发布,主要构成元素是查询主题
  • Cube 类型的数据包 使用 Transformer 来设计和发布,主要构成元素是常规维度 度量维度 ;其组织方式是有一个包含多个度量值的 的度量维度 ,而其他都是包含了层级 级别 常规维度
  • 而中间的 analysis 类型的数据包 也是用 Framework Manager 来设计和发布的;这个例图中,其仿照 cube 类型的数据包 ,包含了常规维度 度量维度 ,而其组织方式是更灵活的树型结构,可以有多级的目录。

数据包的产生

正如前面所说,所有的数据源 模型 多维数据集 等等都是为了发布数据包 ,然后这些数据包 提供给展示实体来使用。

图 11 数据包的产生流程和各种实体之间的关系

(Fig_Datasources_Relations)

上图展示了前面所有示样 数据包 模型 数据源 多维数据集 ,以及它们之间的联系

图中左上部的绿色大框中是三个 Transformer 构建的维度模型 ,并且其定义都包含在红五星标注的文件中。从图中可以看到,这三个模型有不同数据源 类型,从上至下分别从报表 、外部数据文件和数据包 中导入数据。而右边的实线显示了模型生成的多维数据集 文件,进而从多维数据集 构造数据源 ,再由数据源 直接生成数据包。虚线则表示这些数据源 数据包 模型 文件中已经定义了,也可以在产生多维数据集 的时候批量生成。

图的中下部天蓝色大框则是两个 Framework Manager 构建的 CQM 关系模型 ,其主要的模型定义包含在红五星标注的文件中。这两个模型的数据源都来自 Cognos 服务器上的定义,而这两个数据源都基于数据库 GS_DB。模型右边引出的实线指示了发布到 Cognos 服务器的数据包 。而左边那个模型所延伸的红色虚线分别指示了用于 Transformer 模型 数据包 类型的 数据源 ,以及通过数据包 产生 报表 ,再提供给 Transformer 的模型的数据源 类型。

无论是 Transformer 模型 ,还是 Framework Manager 模型 ,其都是建立 数据源 (黄色方框)和数据包 (橙色方框)之间的关系。而实际的数据则源自于多维数据集 或者数据库 。然后,这些数据包 就提供给 Cognos 平台上各种展示工具使用。上面这个图显示了前面所有示样 使用 模型 多维数据集 数据源 之间的联系,可以看到其原始的数据仅仅是来自两个红色箭头所指示的对象:数据文件 数据库

术语对照

表 1 术语的中英文对照
中文英文缩写
关系模型 Relational Model
关系视图 Relational View
兼容查询方式 Compatible Query Mode, CQM CQM
动态查询方式 Dynamic Query Mode, DQM DQM
商业智能 Business Intelligence, BI BI
多维数据集 Cube
层级 Hierarchy
带预先汇集的基于文件
的 MOLAP 多维数据集
File-based MOLAP cube
with pre-aggregation
常规维度 Regular Dimension
度量维度 Measure Dimension
报表 Report
按维度建模的关系 Dynamically Modeled Relational DMR
提示 Prompt
数据包 Package
数据源 Data source
文档对象模型 Document Object Model DOM
查询主题 Query Object
模型 Model
示样 Sample
级别 Level
维度可知的关系型数据源 Dimensionally-Aware Relational Data source
维度视图 Dimensional View
联机分析处理 On-Line Analytical Processing OLAP
联机分析处理数据源 On-Line Analytical Processing Data source
计分卡 Scorecard

参考资料

  1. Cognos BI 10.2.2 的示样文档: Samples for IBM Cognos Business Intelligence 10.2.2
  2. Report Studio ,
  3. Query Studio ,
  4. Event Studio ,
  5. Cognos Workspace ,
  6. Cognos Workspace Advanced
  7. Analysis Studio
  8. PowerPlay Studio
  9. Cognos BI 8.4.0的示样文档 – 运行一个报表: Example – Run a Report
  10. Cognos BI报表的提示API: Prompt API for IBM Cognos BI

评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Information Management, Big data and analytics
ArticleID=1047193
ArticleTitle=Cognos BI的示样解析,第一部分:CQM(兼容查询方式)模式下的示样
publish-date=06282017