尚硅谷_尚硅谷离线数据仓库项目(阿里云离线数仓)_笔记
作者:互联网
网址:https://www.bilibili.com/video/BV1AJ411Q7ox?p=29&spm_id_from=pageDriver
一、项目架构设计
1.1 阿里云技术框架
1.2 技术选型
1.3 系统数据流程设计
二、数据生成模块
三、数据采集模块
3.1 购买 ECS 云服务器
3.2 基础环境准备
3.3 Flume
Flume 是 Cloudera 提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。Flume 基于流式架构,灵活简单。
3.4 DataHub
DataHub 类似于传统大数据解决方案中 Kafka 的角色,提供了一个数据队列功能。对于离线计算,DataHub 除了供了一个缓冲的队列作用。同时由于 DataHub 提供了各种与其他阿里云上下游产品的对接功能,所以 DataHub 又扮演了一个数据的分发枢纽工作。
3.5 DataWorks 和 MaxCompute
四、用户行为数仓搭建
数仓分层优点:
1)把复杂问题简单化:将一个复杂的任务分解成多个步骤来完成,每一层只处理单一的步骤,比较简单、并且方便定位问题。
2)减少重复开发:规范数据分层,通过的中间层数据,能够减少极大的重复计算,增加一次计算结果的复用性。
3)隔离原始数据:不论是数据的异常还是数据的敏感性,使真实数据与统计数据解耦开。
为了减少再购买存储服务器,所以选择内部表。真实企业开发时,大部分情况都是创建外部表,需要在 OSS 服务中申请存储空间。
五、业务数仓理论
1)实体表、维度表
事务型事实表,一般指随着业务发生不断产生的数据。特点是一旦发生不会再变化。一般比如,交易流水,操作日志,出库入库记录等等。
周期型事实表,一般指随着业务发生不断产生的数据。与事务型不同的是,数据会随着业务周期性的推进而变化。比如订单,其中订单状态会周期性变化。再比如,请假、贷款申请,随着批复状态在周期性变化。
2)同步策略
实体表、维度表:每日全量
事务型事实表同步策略:每日增量表,即每日创建一个分区存储;
周期型事实表同步策略:每日新增及变化量,包括了当日的新增和修改。
六、业务数仓搭建
1)每日增量表同步
DATE_FORMAT(create_time,’%Y%m%d’)=’${bizdate}’
2)DWD 层
DWD 层,一般是对 ODS 层数据进行一定的清洗加工,如果是面对关系导入过来的数据表,还要把原本的关系型表结构,进行一定程度的维度退化。作为更易处理的明细数据。
比如:
ODS 地区 + ODS 省份=> DWD 省份地区
ODS 商品信息 + ODS 品牌 + ODS 商品一级分类 + ODS 商品二级分类 =>DWD 商品信息
3)DWS 层
DWS 层主要指针对明细粒度的数据进行短周期的汇总。DWS 公共汇总层是面向分析对象的主题聚集建模。
在本教程中,最终的分析目标为:最近一天某个类目、某个地区、某类人群购买商品的销售总额、购买力分布。因此,我们可以以最终交易成功的商品、买家、地区等角度对最近一天的数据进行组合,组合成为涵盖多个维度的事实宽表。
4)ADS 层
ADS 层主要指针对某一个特定的维度进行的汇总。
在本课程中,主要分析三个需求:用户各个年龄段统计、地区销售统计、热门商品排行所以主要是针对年龄、地区、商品进行汇总统计,统计四个指标下单数、购买商品个数、销售额、平均客单价。
七、数据导出与作业调度
数据开发->数据集成->新建数据集成节点->数据同步
标签:数仓,ODS,离线,DWD,维度,硅谷,数据,DataHub 来源: https://blog.csdn.net/m0_45204457/article/details/118459448