数据仓库之雪花结构
WG出品,必属精品
相对于星型结构而言,雪花结构稍微复杂一点,使用也相对少一点。这种结构的特点是某些维表是某些维表的“事实表”,即某些维表中包含了某些维表的主键。如图所示
从图中就可以看出,这个维表结构相对而言复杂,导数以及维护都相对困难一些,它的存在主要跟根据业务需求来制定出来,也是不得已而为之的选择。如果可以设计为星型结构,最好是设计为星型结构,这对于开发ETL的人来说也是一个减负,后期维护也简单很多。
这种雪花结构与星型结构对比会发现,多了一些从维表。这些从维表的设计主要是为了减少维表的数据冗余,但是效率而言,还是星型结构的高。你想一下,它多了这样的步骤:sql首先得从维表中查询出从维表的ID,然后根据ID再在从维表中查询出维表数据。
这也是一种时间空间效率权衡的典型例子。