没有合适的资源?快使用搜索试试~ 我知道了~
实例剖析4种数据仓库的建模方法
资源推荐
资源详情
资源评论
实例剖析4种数据仓库的建模方法
数据仓库,这个几乎是所有大数据开发面试必问的话题。比如数据仓库的分
层架构?为什么需要数据仓库建模?数据仓库建模的原则是什么?结合业务
举例说明数据仓库建模的步骤,以及注意事项?什么是缓慢变化维?维度该
如何选择建设,原则是什么,主键如何设计等等?
一众问题搞得小伙伴们死去活来,甚至工作好几年的小伙伴都没搞清楚过,
尤其是大厂特别爱问这些问题。有些小伙伴甚至觉得这些都是形而上学,不
懂这些我不一样搞了很多年开发?即使感兴趣的买了一本厚厚的数据仓库工
具书也看不懂!那么实际数据仓库建模到底是什么,开发人员该掌握哪些?
数据仓库前世今生
来一起看个官方定义:数据仓库,英文名称为DataWarehouse,可简写为
DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型
数据支持的战略集合。它出于分析性报告和决策支持目的而创建。为需要业
务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。
数据仓库之父 Bill Inmon 在 1991 年出版的 Building the Data Warehouse
一书中首次提出了被广为认可的数据仓库定义。Inmon
将数据仓库描述为一个面向主题的、集成的、随时间变化的、非易失的数据
集合,用于支持管理者的决策过程。
简单点来说,现实情况是一个企业有很多数据源,比如有的业务数据存放在
Mysql,PG库,有的存放在Oracle,有的日志存放在Ftp,Nginx服务器上等,
有的是外部采集的爬虫数据等等。那么对于企业来说沉淀了这么多数据,如
何将这些数据放到一起进行数据融合,数据分析,给企业挖掘数据价值呢?
这些不同数据源,不同数据存储格式,不同的数据更新周期,如果让你把企
业这些数据融合分析,你怎么办?
首先,你是不是要把这些不同数据按照统一的格式,一定的规范存储到一起
,然后在通过特定的工具做数据计算分析?那么对于企业来说,把企业各种
数据源的数据放到一起存储和计算的地方就叫数据仓库(约定俗称的叫法)
,所以本质上数据仓库上融合各个数据源,存储加工数据的地方,早期大数
据没有发展起来的时候,企业数据仓库的载体一般是Oracle,那时候主要给
企业做BI报表(Business Intelligence商业智能)。
后来随着企业数字化,互联网的发展,企业收集到数据越来越多,发现原有
的技术框架已经满足不了业务存储和分析的需求了。于是乎就有了现在Had
oop生态为主的数仓仓库。
数据仓库建模的目的?
为什么要进行数据仓库建模?大数据的数仓建模是通过建模的方法更好的组
织、存储数据,以便在性能、成本、效率和数据质量之间找到最佳平衡点。
一般主要从下面四点考虑:
� 访问性能:能够快速查询所需的数据,减少数据I/O。
� 数据成本:减少不必要的数据冗余,实现计算结果数据复用,降低大数
据系统中的存储成本和计算成本。
� 使用效率:改善用户应用体验,提高使用数据的效率。
� 数据质量:改善数据统计口径的不一致性,减少数据计算错误
的可能性,提供高质量的、一致的数据访问平台。
常见的数据建模方法
数据仓库本质是从数据库衍生出来的,所以数据仓库的建模也是不断衍生发
展的。从最早的借鉴数据库的范式建模,到逐渐提出维度建模,Data
Vault模型,Anchor模型等等,越往后建模的要求越高,越需满足3NF,4N
F等。但是对于数据仓库来说,目前主流还是维度建模,会夹杂着范式建模
。
数据仓库建模方法论可分为:范式建模、维度建模、Data
Vault模型、Anchor模型。
常见四种建模方法
1、范式建模(E-R模型)
将事物抽象为“实体”、“属性”、“关系”来表示数
据关联和事物描述;实体:Entity,关系:Relationship,这种对数据的抽
象 建模通常被称为ER实体关系模型
剩余14页未读,继续阅读
资源评论
juan9872
- 粉丝: 468
- 资源: 107
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功