数仓架构--之数据拉链表实操

不登高山不知天之高也,不临深溪不知地之厚也

一句话道出求知的路劲,要想知道这个东西难不难只有去行动,去攀登。接下来在这里比较简单的讲讲数仓中的拉链表

拉链表作为处理历史数据的非常常用的表,掌握拉链表可以说掌握了数仓开发的核心,废话不多说,直接进入正题。

拉链表定义

可参考百度不详细说明,主要是记录某些数据特征在某一段时间内持续的状态

拉链表特征

  1. 开始时间和结束时间两个字段;
  2. 需要生成1-2个标志全表字段的字段,根据该字段进行数据变化的判断,如:MD5_FILED(存主键)和NON_MD5_FIELD(存主键以外的必要业务字段);
    MD5生成可以如下:select listagg(to_char(column_name)) from user_table_columns left join user_cons_columns on t2.position is not null where columnname not in (技术字段)
  3. 主键 业务主键和开始时间;
  4. 辅助字段,跑批时间、跑批字段、跑批批次等

拉链表加工

重跑机制

  1. 删除当前批次之后开链的数据
delete from 表 where start_date >=batch_date and jobname = '123'
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值