01_数仓分层架构梳理
2022-03-07 18:28:02 74 举报
AI智能生成
数仓架构-数据分层流转
作者其他创作
大纲/内容
三层设计
阿里One Data
ODS 操作数据层
DWD数据明细层
DWS数据汇总层
CDM:公共维度模型层
ADS 应用数据层
三层设计
1、高内聚低耦合
2、核心模型与拓展模型分离
3、公共处理逻辑下沉及单一
4、成本与性能平和
5、数据可回滚(多次运行)
6、一致性(上下层/相同名称含义一致)
7、命名清洗,容易理解
划分原则
就是一些维度信息,直接存储未读信息,一般维度不会很大
维度表
表述一些事实信息,如订单,收藏,添加购物车等信息
数据量较大,一般存储维度主键,方便后期处理分析再临时关联
事实表
用来描述信息的,如优惠券,促销表
实体表
名称解释
Extract-Transform-Load
ETL:抽取、转换、加载
指字段比较多的数据库,通常是指业务主体相关指标、维度、属性在一起的一张数据库表
宽表将不同的内容放在同一张表,所以不符合三范式的模型设计规范
好处:查询性能的提高和便捷
坏处:数据又大量的冗余
特点
宽表
具有较高层次上将企业信息系统中的数据进行综合、归类和分析类用的一个抽象概念
每个主题基本对应一个宏观的分析领域
主题:Subject
数据集市(Data Mart),也叫数据市场,数据集市就是满足特定的部门或者用户的需求,按照多维的方式进行存储,包括定义维度、需要计算的指标、维度的层次等,生成面向决策分析需求的数据立方体。
数据集市:DataMart
在数据结构上,数据仓库是面向主题的、集成的数据的集合而数据集市通常被定义为星型结构或者雪花模型的结构,数据集市一般是由一张事实表和几张维度表组成
其他常用名词
降低存储压力、降低企业使用成本
复用中间数据结果、提升数据处理速度
灵活应对业务需求,快捷高效
数据分层的意义
让每个数据层都有自己的作用和职责,在使用和维护的时候能够更方便和理解
清洗数据结构
将一个复杂的任务拆解成多个步骤来分步骤完成,每个层只解决特定的问题
复杂问题简单化
通过数据分层,提供统一的数据出口,统一输出口径
统一数据口径
规范数据分层,开发通用的中间层,可以极大地减少重复计算的工作
减少重复开发
数仓分层的好处
分析过的指标
主题数据层
流转/GMV/复购率/转化率/留存率等
DWT层:数据主题层
ADS:Application Data Service
数据应用层-出报表结果
该层主要是提供给数据产品和数据分析使用的数据
ADS:数据应用层
DWS:Data WareHouse Servce
为更上层的ADS层或者直接面向需求方服务.
围绕某一个业务主体进行数据建模,将相关的数据抽离提取出来
如流量会话按照每天/每月进行聚合
将每日新用户进行聚合/将每日活跃用户进行聚合
主题建模
根据业务需要提前将后续数据查询处理需要的维度数据抽离处理处理,方便后续查询使用
如将运营维度数据聚合
将渠道拉新维度数据聚合
维度建模
DWS:数据服务层
DWD:Data Warehouse Detail
去除空值,脏数据,超过极限范围的数据,行式存储改为列存储,改压缩格式
对ODS层数据进行提取转换清洗/ETL
维度退化/数据冗余??
很多时候存储的都是事实表为主.
DWD层:数据明细层
ODS: Operation Data Store
直接加载原始日志、数据,数据保持原貌不做处理
贴源层:原始数据
1、字段缺失 2、字段不统一 3、格式错误
4、关键信息丢失 5、数据来源复杂 6、数据类型不统一
数据可能存在的问题
ODS层:原始数据层
数仓架构-分层梳理
收藏
收藏
0 条评论
下一页