数据仓库入门介绍框架(附带完整项目实战)

image.png
一、诞生背景

  • 企业数据分析需要:各个部门自己建立独立的数据抽取系统,导致数据不一致
  1. 概述
  • 数据仓库是一个面向主题的、集成、非易失的且随时间变化的数据集合
  • 主要用于组织积累的历史数据,并使用分析方法(OLAP、数据分析)进行分析整理辅助决策,为管理者、企业系统提供数据支持,构建商业只能。
  1. 特点
  • 面向主题:根据主题将原始数据集合在一起
  • image.png
  • 集成:原始数据来源不同数据源,需要经过抽取、清洗、转换形成最终数据
  • image.png
  • 非易失:保存的数据是一系列历史快照,不允许被修改,只允许通过工具进行查询。
  • 时变性:数仓会定期接受,集成新的数据,从而反映出数据的最新变化(时间戳)
  1. 数据仓库VS数据库
  • 数据库面向事务设计,属于OLTP(在线事务处理)系统,主要操作是随机读写;在设计是尽量避免冗余,常采用符合范式规范来设计。
  • 数据仓库是面向主题设计的,属于OLAP(在线分析处理)系统,主要操作是批量读写;关注数据整合,以及分析、处理性能;会有意引入冗余,采用反范式设计

image.png

  1. 技术实现
  • 传统数据仓库
    • 由关系型数据库组成MPP(大规模并行处理)集群。
  • 大数据数据仓库
    • 利用大数据天然的扩展性,完成海量数据的存放
    • 将SQL转换为大数据计算引擎任务,完成数据分析
  • MPP架构
    • 传统数仓中常见的技术架构,将单机数据库节点组成集群,提升整体处理性能
    • 节点间为非共享架构,每个节点都有独立的磁盘存储系统和内存系统
    • 每台数据节点通过专用网络或商业通用网络互相连接,彼此协同计算,作为整体提供服务
    • 设计上优先考虑C(一致性),其次考虑A(可用性),尽量做好P(分区容错性)
  • 架构优点
    • 运算方式精细,延迟低、吞吐低
    • 适合中等规模的结构化数据处理
    • image.png

二、架构
image.png

  1. ETL流程
  • E(Extraction)
    • 抽取的数据源可以分为结构化数据、非结构化数据、半结构化数据
    • 结构化数据一般采用JDBC、数据库日志方式,非|半结构化数据会监听文件变动
    • 抽取方式:
      • 全量同步、增量同步
      • 全量同步:全部抽取,用于初始化装载
      • 增量同步方式:检测数据的变动,抽取发生变动的数据
  • T(Transformation)
    • 数据清洗:重复、二义性、不完整、违反业务或逻辑规则的问题进行统一
    • 数据转换:标准化、字段数据类型、数据定义
  • L(Loading)
    • 导入到数据源中ODS层中

image.png

  1. 操作数据层(ODS)
  • 数据于原业务数据保持一致,可以增加字段用来进行数据管理
  • 存储的历史数据是只读的,提供业务系统查询使用
  • 业务系统对历史数据完成修改后,将update_type字段更新为UPDATE,追加回ODS中
  • 在离线数仓中,业务数据定期通过ETL流程导入到ODS中,导入方式有全量、增量
  1. 数据明细层(DWD)
  • 数据明细层对ODS层的数据进行清洗、标准化、维度退化
  • 数据仍满足3NF模型,为分析运算做准备
  1. 数据汇总层(DWS)
  • 数据汇总层的数据对数据明细层的数据,按照分析主题及进行计算汇总,存放便于分析的宽表
  • 存储模型并非3NF,而是注重数据聚合,复杂查询、处理性能更优的数仓模型
  1. 数据应用层(ADS)
  • 数据应用层也被称为数据集市
  • 存储数据分析结果,为不同业务场景提供接口,减轻数据仓库的负担
  1. 建模方法

  2. OLTP系统建模方法

  • OLTP系统建模方法
  • OLAP(在线联机分析)
    • 主要操作是复杂分析查询;关注数据整合,以及分析、处理性能
    • OLAP根据数据存储的方式不同,又分为ROLAP、MOLAP、HOLAP
  • OLAP系统分类
    • ROLAP:使用关系模型构建,存储系统一般为RDBMS
    • MOLAP:预先计算,使用多维数组的形式保存数据结果,加快查询分析时间
    • HOLAP:ROLAP和MOLAP两者的集成;如低层是关系型,高层是多维矩阵型的;查询效率高于ROLAP,低于MOLAP
  1. ROLAP系统建模方法
  • 典型的数据仓库建模方法有ER模型、维度模型、Data Value、Anchor

image.pngimage.png

  • MOLAP系统建模方法
    • MOLAP将数据进行预结算,并将聚合结果存储到CUBE模型中
    • CUBE模型以多维数组的形式,物化到存储系统中,加快后续的查询
    • 生成CUBE需要大量的时间、空间,维度预处理可能会数据膨胀
  • image.png
  1. 多维分析
  • 钻取
    • 对维度不同层次的分析,通过改变维度的层次来变换分析的粒度
    • 钻取包括上卷(Roll-up)、下钻(Drill-down)
  • 切片(Slice)、切块(Dice)
    • 选择某个维度进行分隔成为切片
    • 按照多维进行的切片成为切块
  • 旋转(Pivot)
    • 对维度方向的互换,类似于交换坐标轴上卷(Roll-up)
  1. 最佳实践
  2. 表的分类
  • 事实表:一个现实实在的业务对象
  • image.png
  • 维度表:对应一个业务状态,代码的解释表。码表
  • image.png
  • 事务事实表:随着业务不断产生的数据,一旦产生不会再变化,如交易流水、操作日志、出库入库记录。
  • image.png
  • 周期快照事实表:随着业务周期型的推进而变化,完成间隔周期内的度量统计,如年、季度累计
  • 使用周期+状态度量的组合,如年累计订单数,年是周期,订单总数是量度。
  • image.png
  • 累积快照事实表:
    • 记录不确定周期的度量统计,完全覆盖一个事实的生命周期,如订单状态表
    • 通常有多个时间字段,用于记录生命周期中的关键时间点
    • 只有一条记录,针对此记录不断更新image.png
  1. 任务调度image.png
  • 17
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据仓库项目实战 pdf 是介绍数据仓库项目实施过程与经验的一本书籍。在这本书中,作者从理论基础到实践操作都进行了详细的阐述,使读者能够深入了解数据仓库项目的实施流程和关键要素。 首先,该书介绍数据仓库项目的概念和背景,解释了数据仓库的作用和优势。它还介绍数据仓库项目的整体架构和基本原则,包括数据采集、集成、清洗、转换和加载等步骤,以及数据仓库的模型设计和构建方法。 其次,该书详细讲解了数据仓库项目实施的关键要素和技术工具。它介绍数据仓库项目团队的组织与管理,以及项目计划和进度控制的方法。它还提供了一些常用的数据仓库技术工具和平台,如ETL工具、数据挖掘工具和分析报告工具等,帮助读者选择合适的工具来支持数据仓库项目的实施过程。 最后,该书结合实际案例和项目经验,分享了一些数据仓库项目实施中的注意事项和解决方案。它介绍了一些常见的问题和挑战,如数据质量问题、数据安全问题和性能优化问题等,以及相应的解决方法。它还分享了一些成功的案例和最佳实践,以供读者参考和借鉴。 总的来说,数据仓库项目实战 pdf 是一本实用性很强的书籍,它全面介绍数据仓库项目的实施过程和关键要素,为读者提供了一个指导和参考的框架,帮助他们顺利完成数据仓库项目的实施工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值