< 上一课 | 下一课 >

第 2.1 课:定制数据仓库的缺省模式

在本课程中,您将学习如何将新表添加至缺省模式以及如何将两个表关联。
先决条件:在对数据目录和数据仓库进行任何更改之前,请创建备份。要备份数据目录,请使用 Data Manager 目录备份实用程序。要备份数据仓库,请参阅用于数据仓库的数据库的文档。
在本课程中,将执行以下操作: 在本课程中,您将使用 IBM® InfoSphere™ Data Architect。
  1. 为您的数据库安装样本物理数据库模型。该样本模型可在安装 IBM Rational® Insight 时自动安装。 该样本模型的缺省位置为 C:/Program Files/IBM/Rational Insight/datawarehouse/dw。抽取样本模型。
  2. 启动 IBM InfoSphere Data Architect。如有提示,请选择缺省工作空间。
  3. 为您的教程创建新数据设计项目:
    1. 单击新建 > 项目 > 数据设计项目
    2. 指定名称 RISDW 并接受缺省位置。
    3. 单击完成。如有提示,请选择显示缺省视图。

      通过为数据对象提供容器,创建了新数据设计项目。

      数据项目资源管理器

    4. 在 Windows® 资源管理器中,浏览到您在步骤 1 中下载样本数据模型的目录。将样本数据模型复制到缺省位置(步骤 b)。
    5. 返回到 IBM InfoSphere Data Architect,右键单击 RISDW 项目,然后单击刷新

      现在该数据设计项目将显示物理数据模型样本。

      包含数据模型的数据项目资源管理器

  4. 数据项目资源管理器视图(窗口 > 显示视图 > 数据项目资源管理器)中,展开数据模型以显示物理数据模型(具有 dbm 扩展名的节点)。双击该数据模型以将其展开。
    概念: 树结构中的第一个节点指定数据库别名。要查看数据库的组件(例如模式、表空间和缓冲池),请展开该物理模型。
    包含展开的数据模型的数据项目资源管理器

    在本课程中,将使用缺省模式名称。如果更改了数据库中模式的名称,那么本课程中使用的名称可能与数据库中的模式名称不匹配。 缺省名称为 CONFIG、RIODS 和 RIDW。CONFIG 模式是静态模式,不应进行更改。RIODS 模式是指定的运作数据存储。将为数据集市(事实和维)指定 RIDW 模式并可重命名该模式以符合 Rational Insight 数据仓库的模式命名约定。

    在本课程中,将修改 RIDW 模式。

  5. 右键单击 RIDW,然后单击添加数据对象 >
  6. 指定表属性:
    1. 将表名称指定为 F_DEFECT_METRICS
    2. 在表的“属性”视图中,单击表空间,对于常规选择 VSTR_32K,对于索引选择 VSTR_IDX。
      包含展开的数据模型的数据项目资源管理器
      概念:
      • 在数据集市中命名事实表时,该约定是名称前加 F_ 前缀。
      • VSTR_32K 是为数据集市指定的表空间。
      • VSTR_IDX 是为数据集市的索引指定的表空间。
  7. 对表添加列:
    概念: 您的表将包含按两个维(即“日期”和“组件”)列出的缺陷总数的度量。您将从名为 D_DATE 的现有维表获取“日期”维。对于“组件”维,您将创建一个新维表。

    您的事实表将有五列:TOTAL_DEFECTSDEFECT_METRICS_IDREC_DATETIMECOMPONENT_IDDATE_ID。 您将把 DEFECT_METRICS_ID 列指定为主键并使用它来唯一标识事实行。

    1. 在“数据项目资源管理器”视图中,选择 F_DEFECT_METRICS 表,右键单击并单击添加数据对象 >
    2. 将名称指定为 TOTAL_DEFECTS。在“属性”视图中,单击类型,并指定以下属性:将“数据类型”指定为 INTEGER,将“缺省值”指定为 0,选中“非空”。
    3. 重复步骤 (a)。将名称指定为 DEFECT_METRICS_ID。在“属性”视图中,单击类型,并指定以下属性:将“数据类型”指定为 INTEGER,选中“主键”和“非空”。

      将自动创建名为 F_DEFECT_METRICS1 的主键。

    4. 重复步骤 (a)。将名称指定为 REC_DATETIME。在“属性”视图中,单击类型,并指定以下属性:将“数据类型”指定为 TIMESTAMP,将“缺省值”指定为 CURRENT_TIMESTAMP,选中“非空”。
    5. 重复步骤 (a)。将名称指定为 COMPONENT_ID。在“属性”视图中,单击类型,并指定以下属性:将“数据类型”指定为 INTEGER,选中“非空”。
    6. 重复步骤 (a)。将名称指定为 DATE_ID。在“属性”视图中,单击类型,并指定以下属性:将“数据类型”指定为 INTEGER,选中“非空”。
    表列

    此时已创建名为 F_DEFECT_METRICS 的新事实表并已对该表添加主键。在接下来的几个步骤中,将对此表添加外键。

    缺省情况下,数据仓库中将强制实施引用完整性。因此,在下一步骤中,将实施事实表和在事实表中引用的维之间的引用完整性。

  8. 对 F_DEFECT_METRICS 表添加外键:
    1. 右键单击 F_DEFECT_METRICS 表,并单击添加数据对象 > 外键
    2. 将父表指定为 D_DATE 表。 单击确定
      概念: D_DATE 是在数据仓库中使用的日期维表。
    3. 将外键名称指定为 DATE_ID
    4. 选择 DATE_ID,并在“属性”视图中单击详细信息。在父代部分的唯一约束或索引列表中,选择 D_DATE_PK 主键。如有提示,请选择使用现有子代/属性列
      概念: D_DATE_PK 是此表(F_DEFECT_METRICS)的外键引用的另一个表(D_DATE 表)中的主键。

      将为 F_DEFECT_METRICS 事实表创建名为 DATE_ID 的外键。通过此外键,已创建与现有表 D_DATE 的关系。

      在下一步中,将在数据集市中添加新维表。该维表将由您创建的事实表 F_DEFECT_METRICS 引用。

  9. 右键单击 RIDW,然后单击添加数据对象 >
  10. 指定表属性:
    1. 将表名称指定为 D_COMPONENT_LABEX
      概念: 在数据集市中命名维表时,将使用在名称前加前缀 D 的约定。
    2. 在表的“属性”视图中,单击表空间,对于常规选择 VSTR_32K,对于索引选择 VSTR_IDX。
  11. 对表添加列:
    概念: 您的表将有两列:NAMECOMPONENT_ID。 您将把 COMPONENT_ID 指定为主键并使用它来唯一标识维行。
    1. 右键单击 D_COMPONENT_LABEX 表,并单击添加数据对象 >
    2. 将列名指定为 NAME。在列的“属性”视图中,指定以下属性:将“数据类型”指定为 VARCHAR,将“长度”指定为 255,选中“非空”。
    3. 重复步骤 (a)。将列名指定为 COMPONENT_ID。在列的“属性”视图中,指定以下属性:将“数据类型”指定为 INTEGER,选中“主键”和“非空”。

      将自动创建名为 D_COMPONENT_LABEX1 的主键。

    此时已创建名为 D_COMPONENT_LABEX 的新维表并已对该表添加主键。在接下来的几个步骤中,将使用此主键以将它链接到您在之前创建的 F_DEFECT_METRICS 事实表。

  12. 将 F_DEFECT_METRICS 事实表链接到 D_COMPONENT_LABEX 维表:
    1. 右键单击 F_DEFECT_METRICS,并单击添加数据对象 > 外键
    2. 将父表指定为 D_COMPONENT_LABEX。 单击确定
    3. 将外键名称指定为 COMPONENT_ID
    4. 选择 COMPONENT_ID,并在“属性”视图中单击详细信息。在父代部分的唯一约束或索引列表中,选择 D_COMPONENT_LABEX1 主键。如有提示,请选择使用现有子代/属性列

    您已将 F_DEFECT_METRICS 事实表链接到两个维表:日期属性对应的 D_DATE 表和组件属性对应的 D_COMPONENT_LABEX 表。

    您现在将为您添加的新表生成模板。要执行此操作,将需要把这些表导出到 DDL 脚本并运行该脚本。

  13. 为 D_COMPONENT_LABEX 表生成 DDL 脚本:
    1. 右键单击 D_COMPONENT_LABEX 表,并单击生成 DDL
    2. 选项页面中,选择:
      • 标准名称
      • CREATE 语句
      • COMMENT ON 语句
      • IN TABLESPACE 子句
      单击下一步
    3. 对象页面中,选择:
      • 检查约束
      • 外键约束
      • 主键约束
      单击下一步
    4. 选择在服务器上运行 DDL,并单击下一步
      切记: 对于教程,您将使用样本数据库(RIDW)。 使用在服务器上运行 DDL 选项对实时数据库运行 DDL 脚本时请小心。使用 IBM InfoSphere Data Architect 时,将无法使用迁移功能;因此将无法保留现有表的数据。该表将被创建,或是先被删除然后再被创建。

      可以选择仅保存生成的 DDL 脚本并在以后运行该脚本。

    5. 连接页面中,选择使用现有连接,选择 RIDW,然后单击下一步
    6. 输入数据库管理员的用户名和密码,单击下一步,然后单击完成
    7. 保存模型。
  14. 为 F_DEFECT_METRICS 表生成 DDL 脚本:
    1. 右键单击 F_DEFECT_METRICS 表,并单击生成 DDL
    2. 选项页面中,选择以下选项:
      • 标准名称
      • CREATE 语句
      • COMMENT ON 语句
      • IN TABLESPACE 子句
      单击下一步
      DDL 脚本的元素
    3. 对象页面中,选择以下选项:
      • 检查约束
      • 外键约束
      • 主键约束
      单击下一步
      DDL 脚本的对象
    4. 选择在服务器上运行 DDL,并单击下一步
      生成 DDL 并在服务器上运行
    5. 连接页面中,选择使用现有连接,选择 RIDW,然后单击下一步
    6. 输入数据库管理员的用户名和密码,单击下一步,然后单击完成
    7. 保存模型。

    此时已应用更改,因而已修改您的表结构。

在本课程中,您学习了: