数据仓库理论知识
作者:互联网
一,数据仓库与数据集市
可以简单理解为数据仓库是面向整个企业,而数据集市是面向某个部门的。
数据集市的数据来自数据仓库,当然,如果没有数据仓库,数据集市的数据也可以直接取自业务数据库。
二,数据仓库分层
数据仓库分层并没有严格规定,是一种经验的积累和行之有效的数据仓库方案。
数据仓库分层的好处:
- 化繁为简,把复杂的任务分解为多个较容易的任务
- 减少重复工作,重用中间层
- 隔离原始数据,原始数据是不可再生数据,要原样保存,以便可以在必要时重复计算
三,关系模型三范式
三范式是关系型数据库设计时要考虑的三条原则,主要是解决数据冗余问题。
要理解三范式,首先要搞清楚三个概念:完全函数依赖、部分函数依赖、间接函数依赖。
完全函数依赖
如图所示,学生课程分数可以由学号和课程名称推导得出,但不能由学号或者课程单独推导得出,课程分数是完全依赖
于学号和课程名称的。
部分函数依赖
如图所示,学生课程分数可以由学号、学生名称、课程名称推导得出,但学生名称不是必须依赖的,课程分数是部分依赖
于学号、学生姓名、课程名称的。
间接函数依赖
如图所示,通过学号可以推导得出学系,通过学系可以推导得出系主任,则系主任是间接依赖
于学号的。
细想,在部分依赖的情景中,学生姓名就是冗余的,是可以不出现在当前表中的;在间接依赖的情景中,系主任就是冗余的,是可以不出现在当前表中的;
三范式就是基于函数依赖提出来的。
第一范式:列不可再分
下图举一个反例,商品列包含了名称和数量,违背了第一范式
第二范式:不能存在部分函数依赖
第三范式:不能存在间接函数依赖
可见,理解了函数依赖,三范式就是手到擒来。
标签:依赖,范式,函数,推导,数据仓库,课程名称,理论知识 来源: https://blog.csdn.net/epitomizelu/article/details/121599262