数据库建模:关系建模和维度建模,三范式和事实表维度表

一、关系建模——三范式理论

三范式是基于关系建模的术语,主要应用于OLTP,避免数据冗余,让每个数据只出现一次

第一范式:属性不可切分,指一张表的所有属性不可再往下细分

                  非主属性对码,存在部分函数依赖

码:假设k为表中的某个属性或属性组,当k确定的情况下,表中其余属性也都可以确定,那么k就被称为码,即候选码

第二范式:非主属性对码,只存在完全函数依赖和传递函数依赖,不存在部分函数依赖

第三范式:非主属性对码,只存在完全函数依赖,不存在部分函数依赖和传递函数依赖

参考文档链接:如何理解关系型数据库的常见设计范式?

缺点:三范式建模虽然可以减少数据冗余,但是造成的结果是拆分出来的单表会比较多,大规模数据跨表分析查询时,会造成多表关联,大表之间join等,大大影响执行效率。

 

所以这又引入了维度建模的模式,适用于OLAP数据仓库建模理论

二、维度建模——事实表和维度表

维度建模把各种关系表整理成了两个大类:事实表和维度表

事实表:事务型事实表、周期型事实表

维度表:实体表、可变的维度表、不可变的维度表

维度建模的核心也就是以一个事实表为中心,其他维度表进行环绕

 

维度建模模型分为三种:雪花模型、星型模型和星座模型

    原文作者:攻城狮Kevin
    原文地址: https://blog.csdn.net/wx1528159409/article/details/104252173
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞