数据仓库 - 架构

模式定义为数据库的逻辑描述,其中事实和维度表以逻辑方式连接.数据仓库以Star,Snow flakes和Fact Constellation模式的形式进行维护.

Star Schema

Star模式包含一个事实表,多维表.每个维度仅使用一维表表示,并且不进行规范化. Dimension表包含一组属性.

特征

  • 在星型模式中,只有一个事实表和多个维度表.

  • 在星型模式中,每个维度都由一维表表示.

  • 维度表是未在星型模式中标准化.

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

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

Star Schema

中心有一个事实表.它包含四个维度中每个维度的键.事实表还包含属性,即销售的美元和销售的单位.

注意 : 每个维度只有一维表,每个表包含一组属性.例如,位置维度表包含属性集{location_key,street,city,province_or_state,country}.此约束可能会导致数据冗余.

例如 :  "温哥华"和"维多利亚"两个城市都在加拿大不列颠哥伦比亚省.此类城市的条目可能会导致属性province_or_state和country的数据冗余.

Snowflakes Schema

Snowflake架构中的某些维度表已标准化.规范化将数据拆分为其他表格,如下图所示.

Snowflakes Schema

与星型模式不同,雪花模式中的维度表是规范化的.

例如 : 星型模式中的项目维度表被规范化并拆分为两个维度表,即项目和供应商表格.现在,项目维度表包含属性item_key,item_name,type,brand和supplier-key.

供应商密钥链接到供应商维度表.供应商维度表包含supplier_key和supplier_type属性.

注意 : 由于Snowflake架构的规范化,冗余度降低,因此易于维护和节省存储空间.

Fact Constellation Schema(Galaxy Schema)

事实星座有多个事实表.它也被称为Galaxy Schema.

下图显示了两个事实表,即Sales和Shipping :

Galaxy Schema

销售事实表与星型模式中的相同.运输事实表有五个维度,即item_key,time_key,shipper_key,from_location,to_location.运输事实表还包含两个措施,即销售的美元和销售的单位.也可以在事实表之间共享维度表.

例如 : 时间,项目和位置维度表在销售和运输事实表之间共享.