数仓开发增量数据到全量表方案记录

数仓开发增量数据到全量表一般来说有两种方法

  1. 通过扫描增量表的全部分区进行全量的产出

    • 扫描上游增量表的全部分区数据
    • 关联所需要的维度即可
  2. 通过自依赖上一个周期的数据和增量表的数据Union产出

    • 扫描上游增量表最新的1-3个分区(防止数据漂移)
    • 扫描产出目标表的上一个周期的仅增量表中有的字段
    • Union ALL 再 group by 去重
    • 关联所需要的维度
      说明:方法二的坑是Union的字段只能是增量表中的字段 不能直接把目标表的上一个分区全部字段拿过来union
      例如:增量表如果只有page_id 字段page_name需要从维表里面拿的话,page_name
      下面是维表的每个分区的记录
日期字段名字段值字段名字段值
20240101page_id1page_name1
20240102page_id1page_name2
20240103page_id1page_name3
20240104page_id1page_name4
20240105page_id1page_name5

如果从20240101开始直接拿目标表上一个分区的全部信息和 (增量表最新的分区数据关联维度) union 会发现
后面全部分区的page_id = 1 的数据 page_name = 1
下面是目标表的数据记录

日期字段名字段值字段名字段值
20240101page_id1page_name1
20240102page_id1page_name1
20240103page_id1page_name1
20240104page_id1page_name1
20240105page_id1page_name1
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值