ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

数仓分层

2022-05-10 10:03:27  阅读:221  来源: 互联网

标签:数仓 ODS 建模 分层 DWD 维度 数据


数据仓库分层

来源

https://www.bilibili.com/video/BV1t54y1r7Mc?p=79

参考文章:https://blog.csdn.net/rlnLo2pNEfx9c/article/details/122426579

数仓建模:https://blog.csdn.net/rlnLo2pNEfx9c/article/details/122402191

离线数仓

所谓数仓建模:就是应该建哪些表,表与表之间的关系是怎样的,表里都应该有哪些字段

所谓分层,就是每一层放不同的表,比如ODS,DWD分别方不同的表

ODS(Operation Data Store)原始数据层

  • ODS层的数据来源

    • 业务系统产生的原始数据,比如下单以后产生的订单,用户浏览页面形成的行为日志,爬虫等一系列数据源的数据

    • 开发中几乎都不会直接从ODS层拿数据,因为这里有隐私数据;

ETL(Extract-Transform-Load)

将数据从来源端经过抽取(extract)转换(transform)加载(load)至目的端的过程。是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程。

对原有分散的数据库数据抽取、清理的基础上经过系统加工、汇总和整理得到的。必须消除源数据中的不一致性

目的是将企业中的分散、凌乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。

  • 主要的数据处理是:去空值、去极值(比方取款300亿)、去业务极值、部分数据脱敏、维度退化等即对业务数据传过来的表进行维度退化和降维(如:商品一级二级、省市县、年月日等)。

DWD(Data WareHouse detail)明细数据层

所谓这层的数据清洗(比如去除空值,去除脏数数据[手机号码、身份证号码长度不合法]以及数据脱敏)

维度退化:百度数仓建模

说白了这一层就是再对ODS层的数据再次进行整理,因为ODS层的数据可能会比较乱,包括日志的解析(日志在ODS是一个字符串)

这层会做维度建模,事实表(dwd_fact)、维度表(dwd_dim)两种

  • DWD层的数据来源

    • ODS层的数据到DWD层,需要对数据进行清洗做ETL操作(比如去除空值,去除脏数数据[手机号码、身份证号码长度不合法]以及数据脱敏)

    • 维度退化:百度数仓建模

  • DWD层会做维度建模,事实表(dwd_fact)、维度表(dwd_dim)两种

  • 小结

    • 这一层就是再对ODS层的数据再次进行整理,因为ODS层的数据可能会比较乱,包括日志的解析(日志在ODS是一个字符串)

DWS(Data WareHouse Service)数据服务层

  • DWS会对以DWD的数据为基础,根据不同的指标进行轻度汇总,比如今天有多少活跃用户。。

DWT(Data WareHouse Topic)数据主题层

主题,比如用户,地区,说白了就是对象

  • 这层是以DWS层的数据为基础,根据不同的主题进行汇总

  • 按照一定的主题域进行组织主题是一个抽象的概念,是指用户使用数据仓库进行决策时所关心的重点方面,一个主题通常与多个操作型信息系统相关。每一个主题基本对应一个宏观的分析领域。

    比如保险公司的数据,有养老保险、医疗保险、汽车保险;这个保险就是一个主题

  • 比如:银行的数据仓库的主题:客户

ADS(Application Data store)数据应用层

为各种统计报表提供数据

azkaban

使用azkaban去调度每一层?百度下

数据仓库为什么要分层

  • 把复杂问题简单化

    • 将复杂的任务分解层多层来完成,每一层只处理简单的任务,方便定位问题

  • 减少重复开发

    • 规范数据分层,通过中间层数据,能够减少极大的重复计算,增加一次计算结果的复用性

  • 隔离原始数据

    • 不论是数据的异常还是数据的敏感性,使真实数据与统计数据解耦开

标签:数仓,ODS,建模,分层,DWD,维度,数据
来源: https://www.cnblogs.com/xiaomengniu/p/16252281.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有