Pipeline 編排 中階
資料管道的冪等性設計
請說明資料管道冪等性的重要性與實作方式。
什麼是冪等性
冪等操作(Idempotent Operation)執行一次與執行多次的結果相同。在資料管道中,即使任務因失敗被重試,也不會產生重複或錯誤資料。
為何重要
管道任務失敗後必然重試。若任務不冪等,重試會造成資料重複(重複插入)或計算錯誤(重複累加)。
實作策略
UPSERT 代替 INSERT
使用 INSERT ... ON CONFLICT DO UPDATE(PostgreSQL)或 MERGE(SQL),有資料則更新,無則插入,避免重複。
分區覆寫(Partition Overwrite)
在寫入前先刪除目標日期的分區資料,再重新插入。確保重跑同一天的任務結果一致。
唯一鍵約束
在目標表設定唯一鍵,資料庫層面防止重複插入。
狀態追蹤
記錄每次任務的執行狀態(已處理的 offset 或 watermark),重試時跳過已處理部分。
✦ AI 模擬面試
輸入你的答案,AI 即時分析精準度與改進空間
登入後即可使用 AI 評分
