mysql 拉链算法_增量累加、拉链算法等8种ETL算法汇总。

ETL算法详解:全删全插、增量累加、拉链模型
本文汇总了8种ETL算法,包括全删全插、增量累全、增量累加、全历史拉链和增量拉链等模型,适用于数据仓库的历史数据追踪。详细介绍了每种算法的应用场景、实现逻辑和ETL代码示例,帮助理解如何在实际数据处理中应用这些算法。

1  ETL算法概览

3e7cb50adce2cf3710ed3e40f8ea28c8.png

>  算法应用场景概览

739e8cc9f0dc661efffe9e92e363a0c1.png

以上共计累积了8种ETL算法,其中主要分成4大类,增量累加、拉链算法是更符合数据仓库历史数据追踪的算法,但现实中基于业务及性能考虑,往往存在全删全插、增量累全算法的数据表应用。

2  全删全插模型

即Delete/Insert实现逻辑;

>  应用场景

主要应用在维表、参数表、主档表加载上,即适合源表是全量数据表,该数据表业务逻辑只需保存当前最新全量数据,不需跟踪过往历史信息。

>   算法实现逻辑

1.清空目标表;

2.源表全量插入;

>   ETL代码原型

--   1. 清理目标表

TRUNCATE TABLE ;

--   2. 全量插入

INSERT INTO    (字段***)

SELECT 字段***

FROM 

***JOIN 

WHERE   ***;

3  增量累全模型

即Upsert实现逻辑;

>  应用场景

主要应用在参数表、主档表加载上,即源表可以是增量或全量数据表,目标表始终最新最全记录。

>  算法实现逻辑

1.利用PK主键比对;

2.目标表和源表PK一致的变化记录,更新目标表;

3.源表存在但目标表不存在,直接插入;

>  ETL代码原型

-- 1. 生成加工源表

Create temp Table  ***;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值