电商项目之 DWD 层建模分析|学习笔记

简介: 快速学习电商项目之 DWD 层建模分析

开发者学堂课程【新电商大数据平台2020最新课程电商项目之 DWD 层建模分析】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/640/detail/10553


电商项目之 DWD 层建模分析


目录

一、 明细粒度事实层(DWD)

二、事务事实表

三、周期快照事实表

四、累积快照事实表

 

一、明细粒度事实层(DWD)

1.DWD 是什么?

明细粒度事实层以业务过程作为建模驱动,基于每个具体的业务过程特点,构建最细粒度的明细层事实表,可以结合企业的数据使用特点,将明细事实表的某些重要维度属性字段做适当冗余,即宽表化处理明细粒度事实层(DWD)通常分为三种:

事务事实表、周期快照事实表和累积快照事实表。

这三种比较常用。

2.DWD 中的信息有什么

事实表中一条记录所表达的业务细节程度被称为粒度。

(1) 通常粒度可以通过两种方式来表述:一种是维度属性组合所表示的细节程度,一种是所表示的具体业务含义。

(2) 作为度量务过程的事实,通常为整型或浮点型的十进制数值,有可加性、半可加性和不可加性三种类型:

(3) 可加性事实是指可以按与事实表关联的任意维度进行汇总

示例:交易订单记录表中的【用户 ID】可以进行 countdistinct count 汇总

(2)半可加性事实只能按照特定维度汇总不能对所有维度汇总

示例:库存可以按照地点和商品进行汇总,而按时间维度把一年中每个月的库存累加则毫无意义

交易订单记录表中的【时间维度、地区维度按照这类“自然属性”的维度进行统计,在主题层没有实际意义,而偏统计报表类计算更多在 DM 层进行汇总,或者在 DWS 层往往是以某个主题数据做核心,与其产生关系的其他主题数据作为度量值来进行统计汇总的

(3)完全不可加性

示例:转化率、比率型等事实

 

二、事务事实表

事实表用来描述业过程,眼跟空间成时间上某点的度量事件,保存的是最子的数据,也称为子事实表。

示例:

交订单记录表广告放数据,这类数据本身是一个业务过程,对于这个过程创建统一的事务事实表,然后保证最原始的数据。

 

三、周期快照事实表

周期快照事实表中的每行汇总了发生在某一标准周期,如一天一周或一月的多个度量,其度是周期性的网段,而不是单个事务,周期事实表通常包含许多数据的总计,因为任何与事实表时间范围一的记录会包含在内。

比如统计近七天的用户量,创建周期快照事实表,按照周月统计,取到对应的度量值,拿到业务值。

示例:

一个月一周的售订单周期快,用于按产品统计每个月总的销售订单金额和产品销售数量。

另外期快照在库存管理和人力资源系统中有比较广泛的应用。

零售商希望通过产品和商店分析每天保有商品的库存水平,分析的业务过程是零售商店库存的每日周期快照。

2.在人力资源管理系统中,分析包括员工数量,支付的工资、假期天数,新增员工数量,南职员工数,磁升人员数等,这时需要建立一个每月员工统计周期快照。

 

四、累积快照事实表

累积快照事实表用来表述过程开始和结束之间的关键步骤事件,覆盖过程的整个生命周期,通常具有多个日期字段来记录关键时间点当累积快照事实表随着生命周期不断变化时,记录也会随着过程的变化而被修改。

具体实现方式:

拉链表形式表达事实数据的变化过程或称历史轨迹

这个表划分方式,建模流程,数据表的基本讲解完成。

需要掌握建表的过程,需要依据什么建表,依据数据类型,如果三方数据不一样,工资取出来,进行维度表的维度聚合,放到一个表中,这个就是数仓。每公司业务不一样,创建也不一样,建模也不一样,进行业务实例操作。

相关文章
|
消息中间件 存储 Kafka
Flink---11、状态管理(按键分区状态(值状态、列表状态、Map状态、归约状态、聚合状态)算子状态(列表状态、广播状态))
Flink---11、状态管理(按键分区状态(值状态、列表状态、Map状态、归约状态、聚合状态)算子状态(列表状态、广播状态))
|
2月前
|
缓存
基于Squid代理实现SSRF攻击物理防御
本文介绍一种通过Squid代理集群实现物理隔绝的SSRF防御方案。利用Private Link与NLB构建隔离网络,将用户URL请求转发至独立Squid集群处理,有效阻断内网探测与攻击,提升系统安全性。
147 4
|
机器学习/深度学习 人工智能 自然语言处理
AI战略丨物流 AI 新变化,用大模型定义
物流企业在大模型上纷纷主动探索,也在推动物流行业实现智能化加速。
|
数据处理 API 调度
深入理解Flink Flink Job提交和Flink Graph详解
Apache Flink通过其高效的作业提交流程及灵活的Graph表示,为处理大规模数据流提供了强大的能力。理解Flink Job的提交与任务调度,以及Flink Graph的构建和优化,是深入掌握Flink并高效利用其处理能力的关键。Flink的设计哲学和强大功能使其成为实时数据处理领域的重要选择之一。
683 3
|
中间件 开发者
史上最详细的Gin中间件使用教程
1.概述 Gin框架允许开发者在处理请求的过程中,加入用户自己的钩子(Hook)函数。这个钩子函数就叫中间件,中间件适合处理一些公共的业务逻辑,比如登录认证、权限校验、数据分页、记录日志、耗时统计等。
1559 87
史上最详细的Gin中间件使用教程
跨域问题以及经过网关二次转发重复跨域问题完美解决
跨域问题以及经过网关二次转发重复跨域问题完美解决
|
运维 Cloud Native 持续交付
【阿里云云原生专栏】从零到一搭建云原生应用:阿里云云原生应用平台实战教程
【5月更文挑战第24天】本文档是一份阿里云云原生应用平台的实战教程,介绍了如何从零开始搭建云原生应用。内容涵盖云原生应用的特点(容器化、微服务、CI/CD和自动化运维)以及阿里云提供的服务,如容器服务、服务网格和CI/CD工具。教程详细讲解了创建容器集群、编写Dockerfile、构建镜像、部署应用、配置服务网格和设置CI/CD的步骤。通过本文,读者将学会利用阿里云平台开发和管理云原生应用。
1337 0
|
Web App开发 数据格式 索引