数仓建模理论 之 ER实体模型

0,数仓建模的目标

1,访问性能:能够快速查询所需的数据,减少数据I/O
2,数据成本:减少不必要的数据冗余,实现计算结果数据复用,降低大数据系统中的存储成本和计算成本
3,使用效率:改善用户应用体验,提高使用数据的效率
4, 数据质量:改善数据统计口径的不一致性,减少数据计算错误的可能性,提供高质量的、一致的数据访问平台
So,大数据的数仓建模需要通过建模的方法更好的组织、存储数据,以便在性能、成本、效率和数据质量之间找到最佳平衡点

1,关系模式范式

关系型数据库设计时,遵照一定的规范要求,目的在于降低数据的冗余性和数据的一致性,目前业界范式有:
1 第一范式(1NF)
2 第二范式(2NF)
3 第三范式(3NF)
4 巴斯-科德范式(BCNF)
5 第四范式(4NF)
6 第五范式(5NF)

 1,第一范式(简述)

属性不可切割

 2,第二范式(简述)

不能存在“部分函数依赖”

 3,第三范式(简述)

不能存在“传递函数依赖”

emmm,如果你有良好的三范式功底,

当你看完上面三张图的时候,你已经可以理解透彻了。

当然,想详细了解三范式,可以查看之前写的一篇建模三范式的文章:

大数据 建模理论 之 三范式(详解)-CSDN博客

2,ER实体模型:

在信息系统中,将事物抽象为“实体”、“属性”、“关系”来表示数据关联和事物描述;实体:Entity,关系:Relationship,这种对数据的抽象建模通常被称为ER实体关系模型

实体:通常为参与到过程中的主体,客观存在的,比如商品、仓库、货位、汽车, 此实体非数据库的实体表

属性:对主体的描述、修饰即为属性,比如商品的属性有商品名称、颜色、尺寸、 重量、产地等

关系:现实的物理事件是依附于实体的,比如商品入库事件,依附实体商品、货位,就会有“库存”的属性产生;用户购买商品,依附实体用户、商品,就会有“购买数量”、“金额”的属性产品。

实体之间建立关系时,存在对照关系:

1:1 ,即1对1的关系,比如实体人、身份证,一个人有且仅有一个身份证号

          实体之间建立关系时,存在对照关系:

1:1 ,即1对1的关系,比如实体人、身份证,一个人有且仅有一个身份证号

n:m,即多对多的关系,比如实体学生、课程,每个学生可以选修多门课程,

         同样每个课程也可以被多门学生选修

emmmm,有点枯燥无味,来个案例阐述一下:

3,实战:课程管理系统

该系统主要用来管理某校教师、学生、课程,其中包括课程选修、考试、教师授课、学生班级管理功能,现需要完成数据库逻辑模型设计

步骤如下:

1,抽象出主体

2,梳理主体之间的关系

3,梳理主体的属性

4,画出E-R关系图

4,应用场景

ER模型是数据库设计的理论基础,当前几乎所有的OLTP系统设计都采用ER模型建模的方式;

Bill Inom提出的数仓理论,推荐采用ER关系模型进行建模;

BI架构提出分层架构,数仓底层ods、dwd也多采用ER关系模型就行设计。

      好了,就介绍到这里,欢迎大家用实际的行动,比如说点赞收藏留言,给出你建设性的建议和意见。下次再见。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不被定义喵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值