基本概念
DW :datawarehouse 翻译成数据仓库,DW数据分层,由下到上为 DWD,DWB,DWS
DWD:data warehouse detail 细节数据层,有的也称为 ODS层,是业务层与数据仓库的隔离层
DWB:data warehouse base 基础数据层,存储的是客观数据,一般用作中间层,可以认为是大量指标的数据层。
DWS:data warehouse service 服务数据层,基于DWB上的基础数据,整合汇总成分析某一个主题域的服务数据,一般是宽表。
范式
1 第一范式(1NF)
第一范式就是无重复的列。即实体中的某个属性不能有多个值或者不能有重复的属性
2 第二范式(2NF)
第二范式就是非主属性非部分依赖于主关键字
要求数据库表中的每个实例或行必须可以被唯一地区分。为实现区分通常需要为表加上一个列,以存储各个实例的唯一标识
3 第三范式(3NF)
要求一个数据库表中不包含已在其它表中已包含的非主关键字信息。
A表中只能包含B表的主键做外键
每个部门有部门编号(dept_id)、部门名称、部门简介等信息。员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。如果不存在部门信息表,则根据第三范式(3NF)也应该构建它,否则就会有大量的数据冗余。
4 第四范式(4NF)
当一个表中的非主属性互相独立时
非主属性不应该有多值。若有多值就违反了第四范式
CUSTOMERID|PHONE|CELL
1 198 89
1 198 90
由于PHONE和CELL是互相独立的,而有些用户又有两个和多个值。这
解决问题的方法为,设计一个新表NEW_PHONE(CUSTOMERID,NUMBER,TYPE).这样就可以对每个用户处理不同类型的多个电话号码,而不会违反第四范式。