数据仓库模型中的雪花模式
什么是雪花模式?
数据仓库中的雪花模式是一种多维数据库中表的逻辑排列,其ER图类似于雪花形状。雪花模式是星型模式的扩展,它增加了额外的维度。维度表经过规范化,将数据拆分为额外的表。
雪花模式示例
在下面的雪花模式示例中,国家被进一步规范化为独立的表。

雪花模式的特点
- 雪花模式的主要优点是它使用的磁盘空间更小。
- 更容易实现向模式中添加维度
- 由于表过多,查询性能降低
- 使用雪花模式时将面临的主要挑战是,由于查找表增多,您需要进行更多的维护工作。
雪花模式的优点
- 雪花模式的主要优点是它能够减少磁盘存储需求并连接较小的查找表,从而提高查询性能。
- 在组件和维度级别之间的相互关系方面提供了更大的可扩展性。
- 没有冗余,因此更容易维护。
雪花模式的缺点
- 雪花模式的一个显著缺点是需要增加维护工作。
- 复杂的查询难以理解。
- 更多的表意味着更多的连接,因此查询执行时间更长。
什么是星系模式?
星系模式包含两个事实表,它们之间共享维度表。它也称为事实星系模式。该模式被视为星体集合,因此得名星系模式。
正如您在上面的示例中看到的,有两个事实表
- 收入
- 产品。
在星系模式中,共享维度被称为一致性维度。
星系模式的特点
- 此模式中的维度根据层次结构的不同级别被分离为单独的维度。
- 例如,如果地理位置有四个层次结构级别,如区域、国家、州和城市,那么星系模式应该有四个维度。
- 此外,通过将一个星型模式拆分为更多的星型模式,可以构建这种类型的模式。
- 此模式中的维度很大,需要根据层次结构级别进行构建。
- 此模式有助于聚合事实表以便更好地理解。
什么是星簇模式?
雪花模式包含完全展开的层次结构。然而,这会增加模式的复杂性并需要额外的连接。另一方面,星型模式包含完全折叠的层次结构,这可能导致冗余。因此,最佳解决方案可能是在这两种模式之间取得平衡,即星簇模式设计。
重叠维度可以表现为层次结构中的分支。当一个实体在两个不同的维度层次结构中充当父级时,就会发生分支。然后,分支实体被识别为具有一对多关系的分类。