Back to blog
Backend

Event Sourcing: Kenapa Aplikasi Bank Tidak Pernah Pakai Fitur 'UPDATE'?

Saat kamu menarik uang 100 ribu, database Bank tidak mengubah angka saldomu yang lama menjadi saldo yang baru. Mengapa fitur UPDATE diharamkan di sistem keuangan?

super admin·16 Juli 2026·2 min read
Event Sourcing: Kenapa Aplikasi Bank Tidak Pernah Pakai Fitur 'UPDATE'?
Article Content

Bayangin Saldomu Tiba-Tiba Hilang...

Bayangin Budi narik duit 1 Juta di ATM. Di database Bank, *programmer* pemula menulis kode: UPDATE rekening SET saldo = 4_000_000 WHERE nama = 'Budi'. Saldo Budi yang awalnya 5 Juta, sukses tertimpa (ter-replace) angka baru jadi 4 Juta.

Besoknya, istri Budi komplain ke Bank: "Lho, kok saldo suami saya tinggal 4 juta? Kemarin 5 juta! Siapa yang ambil?". Pihak Bank kebingungan, karena mereka tidak punya bukti! Angka 5 juta yang lama sudah musnah dihapus oleh perintah UPDATE tadi. Bank bisa dituntut nasabah!

Masalahnya: Perintah UPDATE dan DELETE Menghapus Sejarah

Dalam database SQL tradisional (CRUD), fungsi Update (Ubah) dan Delete (Hapus) bersifat merusak data asli (Destructive). Begitu kamu menimpa data lama dengan data baru, sejarah masa lalumu hilang tak berbekas. Di dunia perbankan atau akuntansi, kehilangan jejak sejarah adalah dosa kriminal yang melanggar hukum audit.

Nah, Di Sinilah Arsitektur 'Event Sourcing' Masuk!

Perusahaan level raksasa (Fintech, Bank, Toko Online besar) tidak menggunakan metode CRUD biasa. Mereka menggunakan pola arsitektur Event Sourcing (Buku Besar/Ledger).

Dalam Event Sourcing, FUNGSI UPDATE DAN DELETE DIHARAMKAN! Kamu hanya boleh menggunakan fungsi INSERT (Menambah Baris Baru).

  • Saat Budi buka rekening, Bank nge-INSERT baris: [Event 1] Budi setor awal +5.000.000.
  • Saat Budi narik uang di ATM, Bank TIDAK MENGUBAH baris Event 1. Bank nge-INSERT baris baru di bawahnya: [Event 2] Budi tarik tunai -1.000.000.
  • Lalu, bagaimana cara tahu saldo akhir Budi? Backend akan menjalankan fungsi "Putar Ulang (Replay)". Sistem akan menjumlahkan semua *Event* dari awal lahirnya akun Budi sampai sekarang (5 Juta dikurang 1 Juta). Hasil kalkulasinya: Oh, saldonya sekarang 4 Juta!

Intinya: Dengan pola Event Sourcing, tidak ada data yang musnah. Jika ada Hacker atau Bug yang merusak saldo, sistem bisa memutar ulang sejarah dari titik awal kejadian untuk melihat rekam jejak yang utuh (Audit Trail 100% sempurna).

Mau langsung pakai template?

Jelajahi template gratis dan premium di TampilKit untuk mempercepat proses development project kamu.

Browse Templates