b belajar.myudak

Pipeline data dan retry idempoten

Ikuti pemuatan batch yang aman ketika proses gagal setelah menulis.

dasar #ETL

Yang akan kamu pahami

Pilih identitas stabil untuk mendeteksi record yang diproses ulang.

Konsep inti

Pipeline membaca, mentransformasi, dan menulis data. Jika proses dapat diulang, hasil akhir satu batch perlu sama walau dikerjakan lebih dari sekali. Salah satu cara adalah upsert berdasarkan ID stabil. Simpan checkpoint setelah efek tulis yang relevan terverifikasi.

Coba langkahnya

Batch berisi event A dan B. Worker menulis A, lalu berhenti sebelum mencatat checkpoint.

Efek retry pada baris tujuan dan checkpoint
Sumber batchTabel tujuanAksi
Event AAAtulis berhasil
Event BB·belum tertulis
Checkpoint·lamabelum maju
1/3Percobaan pertama. A sudah ada di tabel tujuan, B belum.tujuan = {A} · checkpoint belum maju

Cek pemahaman

Cek pemahaman
  1. Apa yang terjadi jika tiap retry memakai ID acak baru?