什么是星型模式?


星型模式是一种用于构建数据的方案,它将数据组织成维度表、事实表和物化视图。所有数据都存储在列中,需要元数据来标识充当多维对象功能的列。

星型模式是一种关系模式,其设计定义了一个多维数据模型。星型模式是显式的数据仓库模式。它被称为星型模式,因为该模式的实体关系图呈现为一个星形,各个点从主表发散出去。模式的中心包含一个大型事实表,而星形的各个点则是维度表。

**维度表** - 星型模式将关于维度的所有数据存储在单个表中。层次结构的每一级都由维度表中的一列或一组列定义。可以使用维度对象来描述定义层次结构的两个级别的两列(或列集)之间的层次关系;如果没有维度对象,层次关系仅在元数据中表示。属性存储在维度表的列中。

**事实表** - 度量存储在事实表中。事实表包含一个复合主键,该主键由多个外键(每个维度表一个)和使用这些维度的每个度量的列组成。

**物化视图** - 基于维度表中表示的层次关系计算聚合数据。这些聚合存储在独立的表中,称为汇总表或物化视图。Oracle 对物化视图提供了广泛的支持,包括自动刷新和查询重写。

查询可以针对事实表或物化视图编写。如果针对需要聚合数据才能生成结果集的事实表编写查询,则查询将通过查询重写重定向到现有的物化视图,或者在循环中聚合数据。

星型模式的特点

星型模式具有以下特点:

  • 它用于创建反规范化的数据库,可以快速支持查询响应。

  • 它支持灵活的设计,可以在整个开发周期以及数据库增长过程中轻松更改或插入。

  • 它支持与最终用户通常思考和使用信息的方式相类似的设计。

  • 它可以降低开发人员和最终用户元数据的复杂性。

更新于:2021年11月23日

浏览量:1000+

开启你的职业生涯

通过完成课程获得认证

开始学习
广告