数据分层之DWD

数据分层之DWD1DWD是什么?明细粒度事实层以业务过程作为建模驱动,基于每个具体的业务过程特点,构建最细粒度的明细层事实表。可以结合企业的数据使用特点,将明细事实表的某些重要维度属性字段做适当冗余,即宽表化处理.明细粒度事实层(DWD)通常分为三种:事务事实表周期快照事实表累积快照事实表。2DWD中的信息有什么?事实表中一条记录所表达的业务细节程度被称为粒度。通常粒度可以通过两种方式来表述:一种是维度属性组合所表示的细节程度,一种是所表示的具体业务含义。作为度量业务过程的事实,通常为整型或浮点型的十

大家好,又见面了,我是你们的朋友全栈君。

1 DWD是什么?

  • 属于最细粒度的明细层事实表
  • 明细层事实表的某些重要维度属性字段可以适当冗余

2 DWD中的信息有什么?

  • 有一些记录事实的数字,这些数字可以分为三种

(1) 可加性事实是指可以按照与事实表关联的任意维度进行汇总。
示例:交易订单记录表中的【用户ID】可以进行count|distinct count汇总

(2) 半可加性事实只能按照特定维度汇总,不能对所有维度汇总。
示例:库存可以按照地点和商品进行汇总,而按时间维度把一年中每个月的库存累加则毫无意义。
交易订单记录表中的【时间维度、地区维度】按照这类“自然属性”的维度进行统计,在主题层没有实际意义,而偏统计报表类计算更多在DM层进行汇总,或者在DWS层往往是以某个主题数据做核心,与其产生关系的其他主题数据作为度量值来进行统计汇总的。

(3) 完全不可加性
示例:转化率、比率型等事实。

分类

事务事实表
事务事实表用来描述业务过程,跟踪空间或时间上某点的度量事件,保存的是最原子的数据,也称为原子事实表。
示例:
	交易订单记录表、广告投放数据表,这类数据本身是一个业务过程。
周期快照事实表
周期快照事实表中的每行汇总了发生在某一标准周期, 如一天、 一周或一月的多个度量。 其粒度是周期性的时间段, 而不是单个事务。周期快照事实表通常包含许多数据的总计, 因为任何与事实表时间范围一致的记录都会被包含在内。

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

另外周期快照在库存管理和人力资源系统中有比较广泛的应用
1 零售商希望通过产品和商店分析每天保有商品的库存水平,分析的业务过程是零售商店库存的每日周期快照。 
2 在人力资源管理系统中, 分析包括员工数量、支付的工资、假期天数、新增员工数量、离职员工数量,晋升人员数量等。 这时需要建立一个每月员工统计周期快照。
累积快照事实表
累积快照事实表用来表述过程开始和结束之间的关键步骤事件,覆盖过程的整个生命周期,通常具有多个日期字段来记录关键时间点。当累积快照事实表随着生命周期不断变化时,记录也会随着过程的变化而被修改。

具体实现方式:拉链表形式表达事实数据的变化过程或称历史轨迹
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/153182.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Log4j ConversionPattern参数的格式含义[通俗易懂]

    Log4j ConversionPattern参数的格式含义[通俗易懂]ConversionPattern参数的格式含义格式名含义%c输出日志信息所属的类的全名%d输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy-MM-ddHH:mm:ss},输出类似:2002-10-18-22:10:28%f输出日志信息所属的类的类名%l输出日志事件的发生位置,即输出日志信息的语句处于它所在的类的第几

    2022年8月22日
    6
  • postman调用rpc接口_postman测试本地接口

    postman调用rpc接口_postman测试本地接口一般使用的接口类型都是http协议传输,第一次遇到RPC类型,使用postman进行测试。请求方式get或者post并不影响,URL是在域名后面加了/rpc,例如,https://www.baidu.com/rpcheaders:写了常规请求时的内容(头为空也不影响)body选择raw,{“jsonrpc”:“2.0”,“method”:“eth_getBalance”,“para…

    2022年10月10日
    2
  • touchesBegan 触摸事件

    touchesBegan 触摸事件一、概念介绍1、在用户使用App过程中,会产生各种各样的事件,iOS中的事件可以分为3大类型:1)触摸事件2)加速计事件3)远程操控事件响应者对象UIResponder        在iOS中不是任何对象都能处理事件,只有继承了UIResponder的对象才能接收并处理事件。我们称之为“响应者对象”。      UIApplication、UIViewController、UIView都继承…

    2022年7月25日
    8
  • Dubbo负载均衡策略及自行扩展负载均衡策略

    Dubbo负载均衡策略及自行扩展负载均衡策略负载均衡在集群负载均衡时,Dubbo提供了多种均衡策略,缺省为random随机调用。可以自行扩展负载均衡策略,参见:负载均衡扩展负载均衡策略RandomLoadBalance随机,按权重设置随机概率。在一个截面上碰撞的概率高,但调用量越大分布越均匀,而且按概率使用权重后也比较均匀,有利于动态调整提供者权重。RoundRobinLoadBalance轮循,按公约后的权重设置轮循比率。存在…

    2022年7月11日
    13
  • php源码审计_代码审计入门cms

    php源码审计_代码审计入门cms目录一:代码审计的定义二:为什么选择PHP学习代码审计三:入门准备四:PHP常见的套路4.1 代码结构4.2 目录结构4.3参考项目五:如何调试代码六:代码审计的本质一:代码审计的定义通过阅读一些程序的源码去发现潜在的漏洞,比如代码不规范,算法性能不够,代码重用性不强以及其他的缺陷等等从安全人员的角度来看是:查找代码中是否存在安全问题,推断用户在操…

    2022年10月1日
    5
  • 云盘+Git GUI云盘文件版本控制

    云盘+Git GUI云盘文件版本控制

    2022年1月6日
    58

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号