历史版本2 :訂單補錄資料按日匯總增量更新方案 返回文檔
編輯時間:
內容長度:图片数:目录数:
修改原因:
目錄:
1. 概述编辑
1.1 应用场景
用户业务系统订单表包含:订单ID、订单金额、订单交易日期、订单创建日期。正常情况下「订单交易日期」和「订单创建日期」在同一天,但可能会存在业务人员补录订单的情况,比如原本 9.1号交易的数据,在 9.10 号才补录进系统,此时订单创建日期为 9.10 号,订单交易日期为 9.1 号。
在搭建数仓的时候,ODS 层数据按照订单创建日期做增量更新,可正常进行更新;
DM 层数据按照订单交易日期按日汇总每日的订单金额,并设置每次调度增量更新订单交易日期前五天的数据,但是由于补录数据不确定补录时间,例如9.21日更新前 5 天的数据,但9.21日补录了「订单交易日期」为 9.1、9.2 日的数据,此时常规的先删后更新的增量更新方案无法对补录的数据进行增量同步。
注:标黄为 9.21 补录的历史交易数据。

1.2 解决思路
首先对于没有补录的对应先删除后插入的方案,做常规增量更新。
筛选出「订单创建日期」>「订单交易日期」的订单,取出其中的交易日期,代表此交易日期补录了数据,需要重新计算按日汇总订单金额。
示例:交易日期为9.1号的数据,有一条是9.10号补录。交易日期为9.2号的数据,有一条是9.10号补录的数据。在补录前,已按照常规增量方式计算好了9.1和9.2按日汇总的money和。
预计效果:数据补录后,任务定时运行可刷新9.1和9.2的订单按日汇总的money和。

