第8章 大数据领域建模综述
8.1,为什么需要数据建模
数据爆发增长,如何将这些数据进行有序、有结构地分类组织和存储
(数据太多了,怎么办才能将数据放规矩点,方便后续查找,不要到处散乱)
数据模型建立后好处:
- 性能 :良好的数据模型能帮助我们快速查询所需要的数据,减少数据的I/O吞吐。 (查询速度快)
- 成本:良好的数据模型能极大地减少不必要的数据冗余,也能实现计算结果复用,极大地降低大数据系统中的存储和计算成本。 (降本增效)
- 效率 :良好的数据模型能极大地改善用户使用数据的体验,提高使用数据的效率。 (降本增效)
- 质量:良好的数据模型能改善数据统计口径的不一致性,减少数据计算错误的可能性。(降低错误率)
8.2,关系数据库系统和数据仓库
数据仓库的关系模型来源自数据库(本是同根生,你却榜上富婆,一下子农转非)
8.3,OLTP OLAP 系统的区别看模型方法论的选择
- OLTP 系统通常面向的主要数据操作是随机读写,主要采用满足3NF的实体关系模型存储数据,从而在事务处理中解决数据的冗余和一致性问题;
- OLAP 系统面向的主要数据操作是批量读写,事务处理中的一致性不是OLAP所关注的,其主要关注数据的整合,以及在一次性的复杂大数据查询和处理中的性能,因此它需要采用 些不同的数据建模方法
8.4,典型的数据仓库建模方法论
8.4.1,ER 模型
采用ER模型建设数据仓库模型的出发点是整合数据,将各个系统中的数据以整个企业角度按主题进行相似性组合和合并,并进行一致性处理,为数据分析决策服务,但是并不能直接用于分析决策。
8.4.2,维度模型(重点)
由Ralph Kimball倡导
设计步骤:
- 选择业务过程
业务过程可以是单个业务事件,比如交易的支付、退款等
也可以是某个事件的状态,比如当前的账户余额、物流信息等 - 选择粒度
在事件分析中,我们要预判所有分析需要细分的程度,从而决定选择的粒度。粒度是维度的一个组合(个人理解如人的身份证号、人的姓名、人的性别是一对一,但是人的银行卡账号,手机号却不是一对一,那么身份证号,姓名,性别是相同粒度,银行卡和手机号却不是相同粒度) - 识别维表
选择好粒度之后,就需要基于此粒度设计维表,包括维度属性,用于分析时进行分组和筛选 - 选择事实
确定分析需要衡量的指标
8.4.3,Data Vault 模型
不常用
8.4.4,Anchor 模型
不常用
8.5 阿里巴巴数据模型实践综述
OneData
其包括一致性的指标定义体系 、模型设计方法体系以及配套工具。
我是dyson不只是吹风机,若是对大数据-数据仓库技术感兴趣的可以加我沟通交流,一起进步。VX:daijun1211
ps:若文章侵权、触犯隐私请联系作者删除,谢谢~~