数仓建模综述

一、为什么需要建模

  • 性能:良好的数据模型能帮助我们快速查询所需要的数据,减少数据I/O的吞吐。
  • 成本:良好的数据模型能极大地减少不必要的数据冗余,也能实现计算结果 复用,极大地降低大数据系统中的存储和计算成本。
  • 效率:良好的数据模型能极大的改善用户使用数据的体验,提高使用数据的效率。
  • 质量:良好的数据模型能改善数据统计口径的不一致性,减少数据计算错误的可能性。

二、关系数据库和数据仓库

       随着大型关系数据库商业软件的兴起,现代企业信息系统几乎都在使用关系数据库来存储、加工和处理数据。数据仓库系统也不例外,大量的数据仓库系统依托强大的关系数据库能力存储和处理数据,其采用的数据模型方法也是基于关系数据库理论的。尽管 nosql也有 一定的发展,但是企业仍在大规模使用sql进行数据的加工和处理,仍然使用表存储数据,仍然使用关系理论描述数据之前的 关系,只是在大数据领域,基于其数据存储的特点在关系数据模型的范式上有了不同的选择而已

三、OLAP、OLTP介绍

        数据处理大致可以分为两类:联机事物处理OLTP(online transaction processing)、联机分析处理OLAP(online analytical processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事物处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且 提供直观易懂的查询结果。

  • OLTP:系统强调数据库内存效率,强调内存各种指标的命令率,强调绑定变量,强调并发操作。
  • OLAP:rioting强调数据分析、SQL执行时长、强调磁盘I/O、分区。

       详情:https://www.cnblogs.com/lingchen-liang/p/10690619.html

四、典型 数据仓库建模方法

  1. ER模型:从企业的高度设计一个3NF模型,用实体关系模型描述企业业务,在范式理论上符合3NF。数据仓库中的3NF和OLTP系统中的3NF的区别在于,它是站在企业角度面向主体抽象,而不是针对某个具体业务流程的实体关系的抽象。特点:需要全面了解企业业务和数据、实施周期非常长、对建模人员能力要求比较高。
  2. 维度模型:从分析决策的需求出发构建模型,为分析需求服务,因此它的重点关注用户如何更快速地完成需求分析,同时具有较好的大规模复杂查询的响应性能。其典型代表是星型模型,以及一些特殊场景下的雪花模型。设计步骤:
                                                          1:选择需要进行分析决策的业务过程。业务过程可以是单个业务事件,比如支付、退款等;也可以是某个事件的状态,比如余额;还可以是业务流程。
                                                          2:选择粒度。事件分析中,要预判所有分析需要细分的程度,从而决定选择的粒度。粒度是维度的一个组合。
                                                          3:识别维表。选择好粒度之后,就需要基于此粒度设计维表,包括维度属性,用于分析时进行分组和筛选。
                                                          4:选择事实。确定分析需要衡量的指标。
  3. Data Value模型:是ER模型的衍生,其设计的出发点是为了实现数据的整合,但不能直接用于数据分析决策。强调建立一个可审计的基础数据层,也就是强调数据的历史性、可追溯性和原子性,而不要求对数据进行过度的一致性处理和整合;同时基于主题概念将企业数据进行结构化组织,并引入更进一步 的范式处理优化模型 ,以应对原系统变更的扩展性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值