Cognos 简明教程

Data Warehouse - Schemas

模式被定义为数据库逻辑描述,其中事实表和维度表以逻辑方式结合。数据仓库以星形、雪花形和事实星座模式维护。

Star Schema

星形模式包含一个事实表和多个维度表。每个维度仅以一个维度表表示,并且它们未规范化。维度表包含一组属性。

Characteristics

  1. 在星形模式中,仅有一个事实表和多个维度表。

  2. 在星形模式中,每个维度由维度表表示。

  3. 在星形模式中,维度表未规范化。

  4. 每个维度表都连接到事实表中的键。

下图显示了公司的销售数据,相对于四个维度,即时间、项目、分支和位置。

star schema

中心有一个事实表。它包含四个维度中的每个维度的键。事实表还包含属性(即销售额和销售单位)。

Note − 每个维度只有一个维度表,每个表都保存一组属性。例如,位置维度表包含属性集 {location_key, street, city, province_or_state,country}。此约束可能会导致数据冗余。

For example − “温哥华”和“维多利亚”这两个城市都在加拿大不列颠哥伦比亚省。此类城市的条目可能会导致沿属性 province_or_state 和 country 发生数据冗余。

Snowflakes Schema

雪花模式中的一些维度表已规范化。规范化将数据拆分为其他表,如下所示。

snowflakes schema

与星形模式不同,雪花模式中的维度表已规范化。

For example − 星形模式中的项目维度表已规范化并拆分为两个维度表,即项目表和供应商表。现在项目维度表包含属性 item_key、item_name、类型、品牌和 supplier_key。

供应商键链接到供应商维度表。供应商维度表包含属性 supplier_key 和 supplier_type。

Note − 由于 Snowflake 模式中的规范化,因此冗余减少,因此维护和节省存储空间变得容易。

Fact Constellation Schema (Galaxy Schema)

事实星座具有多个事实表。它也称为 Galaxy 模式。

以下插图显示了两个事实表,即 Sales 和 Shipping −

galaxy schema

Sales 事实表与星型模式中的相同。Shipping 事实表具有五个维度,即 item_key、time_key、shipper_key、from_location、to_location。Shipping 事实表还包含两个度量,即已售金额和已售单位。还可以共享事实表之间的维度表。

For example − 时间、项目和位置维度表在 sales 和 shipping 事实表之间共享。