星型模式

回到术语表

什么是星型模式?

一个星型模式是一种多维数据模型,用于组织数据库中的数据,使其易于理解和分析。星型模式可以应用于数据仓库、数据库、数据集市和其他工具。星型模式设计针对查询大型数据集进行了优化。

星型模式由Ralph Kimball在20世纪90年代引入,通过减少重复的业务定义的重复,可以有效地存储数据、维护历史和更新数据,从而快速地聚合和过滤数据仓库中的数据。

星型模式企业关系图示例,显示连接到多个维度表的单个事实表。

事实表和维度表

星型模式用于将业务数据反规范化为维度(如时间和产品)和事实(如金额和数量的事务)。

星型模式在中心有一个事实表,其中包含业务“事实”(如交易金额和数量)。事实表沿着时间或产品等“维度”连接到多个其他维度表。星型模式使用户能够以他们认为合适的方式对数据进行切片和切分,通常是通过将两个或多个事实表和维度表连接在一起。

非正规数据

明星模式denormalize数据,这意味着向一些维表中添加冗余列,以便更快更容易地查询和使用数据。其目的是通过避免计算成本高昂的连接操作,以数据模型中的一些冗余(数据的复制)换取更高的查询速度。

在这个模型中,事实表是规范化的,而维度表不是。也就是说,来自事实表的数据只存在于事实表中,但维度表可能包含冗余数据。

星型模式的好处

  • 事实/维度模型,如星型模式简单的理解和实现,并使最终用户容易找到他们需要的数据。它们可以应用于数据集市和其他数据资源。
  • 适用于简单查询因为与雪花模式等标准化模型相比,它们在访问数据时减少了对连接的依赖。
  • 能够很好地适应OLAP模型。
  • 提高查询性能与规范化数据相比,因为星型模式试图避免计算成本高昂的连接。

星型模式与3NF(第三范式)有何不同?

3NF,即第三范式,是一种通过规范化减少数据冗余的方法。它是被认为完全标准化的数据库的通用标准。由于数据规范化,它通常比星型模式拥有更多的表。另一方面,由于大型表之间的连接数量增加,查询往往更加复杂。

资源


回到术语表