美文网首页
数据模型

数据模型

作者: 点点渔火 | 来源:发表于2017-07-21 16:21 被阅读0次

    http://blog.csdn.net/huojiao2006/article/details/51209982

    http://blog.csdn.net/nisjlvhudy/article/details/7889422

    http://www.cnblogs.com/benchen/p/6011721.html

    多维数据模型是最流行的数据仓库的数据模型,多维数据模型最典型的数据模式包括星型模式、雪花模式和事实星座模式。

    • 星型模型:
      核心是一个事实表及多个非正规化描述的维度表组成。
    星型模型
    • 雪花模型:
      雪花模式是星型模式的扩展,其中某些维表被规范化,进一步分解到附加表(维表)中。
    雪花模型
    • 事实星座模式(Fact Constellation)或星系模式(galaxy schema)

    数据仓库由多个主题构成,包含多个事实表,而维表是公共的,可以共享,这种模式可以看做星型模式的汇集,因而称作星系模式或者事实星座模式。

    星座模型是星型模型延伸而来,星型模型是基于一张事实表的,而星座模型是基于多张事实表的,而且共享维度信息。 通过构建一致性维度,来建设星座模型,也是很好的选择。比如同一主题的细节表和汇总表共享维度,不同主题的事实表,可以通过在维度上互相补充来生成可以共享的维度。

    星座模式
    • 比较:

    雪花模型使用的是规范化数据,也就是说数据在数据库内部是组织好的,以便消除冗余,因此它能够有效地减少数据量。通过引用完整性,其业务层级和维度都将存储在数据模型之中。

    雪花模型

    相比较而言,星形模型实用的是反规范化数据。在星形模型中,维度直接指的是事实表,业务层级不会通过维度之间的参照完整性来部署。

    星形模型

    雪花模式的维度表是基于范式理论的,因此是界于第三范式和星形模式之间的一种设计模式,通常是部分数据组织采用第三范式的规范结构,部分数据组织采用星形模式的事实表和维表结构。

    雪花模式的优点是没有冗余(或者少冗余), 比较灵活, 适应于不同人群的需求,而星型模型的优点是简单,查询方便。

    选自: http://blog.csdn.net/leicool_518/article/details/45029149(数据仓库有一系列的文章,有空要看看)

    中间层使用雪花结构以降低数据冗余度,数据集市部分采用星型以方便数据提取及分析

    • 范式建模

    第三范式建模是在数据库建模中使用的建模方法,特点是体系化,扩展性好,避免冗余,避免更新异常。所以,在数据仓库的EDW层建模中,我们也提倡使用第三范式建模。但是数据仓库的集成和反映历史变化的特征意味着数据量非常之大,表和表之间的关联效率比较低,所以有些时候完全规范的范式建模并不是最好的选择,通常我们会选择非规范化处理,增加一些冗余的字段来避免表之间关联的次数,这样会节约大量的时间。

    雪花模型是介于星型模型和范式建模之间的。个人理解,范式建模和雪花模型的区别在于雪花模型在维度上也是有冗余的。例如雪花模型例图的地域维度不符合第三范式,因为地域维度中存在传递依赖,城市-省级-国家-地域。

    相关文章

      网友评论

          本文标题:数据模型

          本文链接:https://www.haomeiwen.com/subject/gzsekxtx.html