数据仓库【2】:架构

1、架构图

在这里插入图片描述

2、ETL流程

2.1、ETL – Extract-Transform-Load

  • 将数据从来源端经过抽取(extract)、交互转换(transform)、加载(load)至目的端的过程
  • 构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先
    定义好的数据仓库模型,将数据加载到数据仓库中去
  • ETL 规则的设计和实施约占整个数据仓库搭建工作量的 60%~80%
    在这里插入图片描述

2.1.1、数据抽取(Extraction)

  • 抽取的数据源可以分为结构化数据、非结构化数据、半结构化数据
  • 结构化数据一般采用JDBC、数据库日志方式,非|半结构化数据会监听文件变动
    抽取方式
    • 数据抽取方式有全量同步、增量同步两种方式
    • 全量同步会将全部数据进行抽取,一般用于初始化数据装载
    • 增量同步方式会检测数据的变动,抽取发生变动的数据,一般用于数据更新

2.1.2、数据转换(Transformation)

  • 数据转换要经历数据清洗和转换两个阶段
    • 数据清洗主要是对出现的重复、二义性、不完整、违反业务或逻辑规则等问题的数据进行统一的处理
    • 数据转换主要是对数据进行标准化处理,进行字段、数据类型、数据定义的转换
  • 结构化数据在转换过程中的逻辑较为简单,非 | 半结构化数据的转换会较为复杂

2.1.3、数据加载( Loading )

  • 将最后处理完的数据导入到对应的目标源里

2.2、ETL工具

2.2.1、结构化数据ETL工具

  • Sqoop
  • Kettle
  • Datastage
  • Informatica
  • Kafka

2.2.1、非|半结构化数据ETL工具

  • Flume
  • Logstash

3、数据积存

3.1、操作数据层(ODS)

  • 数据与原业务数据保持一致,可以增加字段用来进行数据管理

  • 存储的历史数据是只读的,提供业务系统查询使用

  • 业务系统对历史数据完成修改后,将update_type字段更新为UPDATE,追加回ODS中
    在这里插入图片描述

  • 在离线数仓中,业务数据定期通过ETL流程导入到ODS中,导入方式有全量、增量两种

    • 全量导入:数据第一次导入时,选择此种方式
    • 增量导入:数据非第一次导入,每次只需要导入新增、更改的数据,建议使用外连接&全覆盖方式

4、数据分析

4.1、数据明细层(DWD)

  • 数据明细层对ODS层的数据进行清洗、标准化、维度退化(时间、分类、地域)
  • 数据仍然满足3NF模型,为分析运算做准备
    在这里插入图片描述

4.2、数据汇总层(DWS)

  • 数据汇总层的数据对数据明细层的数据,按照分析主题进行计算汇总,存放便于分析的宽表
  • 存储模型并非3NF,而是注重数据聚合,复杂查询、处理性能更优的数仓模型,如维度模型
    在这里插入图片描述

4.3、数据应用层(ADS)

  • 数据应用层也被称为数据集市
  • 存储数据分析结果,为不同业务场景提供接口,减轻数据仓库的负担
    • 数据仓库擅长数据分析,直接开放业务查询接口,会加重其负担
      在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

QQ719872578

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

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

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

打赏作者

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

抵扣说明:

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

余额充值