数据仓库和数据仓库分层

一、数据仓库概念

数据仓库(Data Warehouse),可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。 为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。

二、数仓分层的意义

1、问题简单化,将一个复杂的问题分割成多步简单问题的集合,按步骤解决问题;

2、数据结构清晰化,将数据分层后,每一层数据都会有作用域,方便我们对数据进行定位,当数据出现问题时,不用从头对数据进行修复,我可以根据数据表的特性找到具体的数据层,然后对数据进行修复;

3、数据复用化,每一次进行数据计算,大可不用从原始数据重新跑一遍,可以找所需数据的数据层,然后从那一层进行计算,提高数据的复用性;

4、考虑到数据异常和数据的敏感性,我们都应该将原始数据和统计数据分开。

三、数仓分层架构图

1、ods层 :原始数据层,存放原始数据,直接加载原始日志、数据,数据保持原貌不做处理。一般情况下,以增量的方式从业务系统导入到ods层,数据模型和粒度都与业务系统保持一致。ods层是数仓的数据准备层,为dwd层提供数据,可以减少对业务系统的影响;

2、dwd层 :数据明细层,结构和粒度与ods层保持一致,对ods层数据进行清洗(去除空值,脏数据,超过极限范围的数据),也有公司叫dwi。一般情况下,会根据ods增量数据和前一天DWD相关表进行merge生成全量数据,为DW层提供来源明细数据;

3、dw层 :数据事实层,会采用维度建模,星型架构,这一层可细分为dwb与dws。会从dwd层进行轻度清洗,转化,汇总生成dw层数据,如字符合并,email,证件号,日期,手机号转换合并;按各个维度进行聚合汇总;

4、dm层 :数据服务层,以dw或dwd为基础,进行轻度汇总。一般聚集到以用户当日,设备当日,商家当日,商品当日等等的粒度。在这层通常会有以某一个维度为线索,组成跨主题的宽表,比如 一个用户的当日的签到数、收藏数、评论数、抽奖数、订阅数、点赞数、浏览商品数、添加购物车数、下单数、支付数、退款数、点击广告数组成的多列表。

5、st层 :数据来自dw层,采用维度建模,星型架构,主要用于前端报表展示,主题分析,kpi报表。一般从dw层进行粗粒度聚合汇总,如按年、月、季、天对一些维度进行聚合生成业务需求的事实数据。

因为是新手,如果有错的或者模糊的地方,还请谅解!谢谢!!

相关推荐
rADu REME9 小时前
探索Spring Cloud Config:构建高可用的配置中心
大数据·elasticsearch·搜索引擎
xcbrand10 小时前
政府事业机构品牌策划公司找哪家
大数据·人工智能·python
Giggle121811 小时前
上门维修预约小程序开发全流程:从核心功能设计到技术选型实践
大数据·个人开发·内容运营
Elastic 中国社区官方博客12 小时前
Elastic Security、Observability 和 Search 现在在你的 AI 工具中提供交互式 UI
大数据·运维·人工智能·elasticsearch·搜索引擎·安全威胁分析·可用性测试
TechubNews13 小时前
Base 发布首个独立 OP Stack 框架的网络升级 Azul,将是 L2 自主迭代的开端?
大数据·网络·人工智能·区块链·能源
金融小师妹13 小时前
AI政策框架解析:凯文·沃什货币体系重构与美联储治理范式转型
大数据·人工智能·重构·逻辑回归
多年小白14 小时前
中科院 Ouroboros 晶圆级存算一体芯片深度解析
大数据·网络·人工智能·科技·ai
SelectDB14 小时前
从 T+1 到分钟级:金城银行基于 Apache Doris 构建高可靠、强一致的实时数据平台
大数据·数据库·数据分析
夜瞬14 小时前
Git工作流程与常用指令——从本地开发到远程协作
大数据·git·elasticsearch
曾阿伦14 小时前
Spark flatMapToPair算子卡顿优化
大数据·分布式·spark