CAP Theorem

Teorema CAP (CAP Theorem) adalah hukum besi dalam arsitektur database terdistribusi. Teorema ini menyatakan bahwa sebuah sistem database terdistribusi (yang berjalan di beberapa server sekaligus) hanya dapat menjamin maksimal **dua dari tiga** pilar utama: Consistency (Konsistensi), Availability (Ketersediaan), dan Partition Tolerance (Toleransi Partisi).

1. Tiga Pilar Teorema CAP

Untuk merancang sistem terdistribusi, kita harus memahami arti dari ketiga pilar pembentuk CAP:

  • Consistency (Konsistensi): Setiap kali pengguna membaca data dari server manapun, mereka dijamin mendapat salinan data paling baru atau pesan eror.
  • Availability (Ketersediaan): Setiap permintaan data dari pengguna harus selalu mendapat respon sukses, tanpa jaminan bahwa data tersebut adalah versi paling terbaru.
  • Partition Tolerance (Toleransi Partisi): Sistem tetap bekerja normal meskipun koneksi jaringan antar server terputus atau mengalami delay parah.
Dilema Segitiga Teorema CAP
Segitiga Teorema CAP
Ilustrasi dilema penyeimbangan pilar Consistency, Availability, dan Partition Tolerance.
Ilustrasi dibentuk otomatis menggunakan asisten kecerdasan buatan (AI)

2. Pilihan Dilematis di Dunia Nyata

Karena jaringan internet di dunia nyata pasti bisa mengalami gangguan (Partition Tolerance wajib dipilih), tim developer dihadapkan pada dilema utama:

  • Memilih CP (Consistency + Partition Tolerance): Jika server A dan B terputus, sistem akan menghentikan transaksi di server B (mengirim pesan eror) untuk menjaga konsistensi data agar saldo tidak berbeda.
  • Memilih AP (Availability + Partition Tolerance): Sistem tetap membolehkan transaksi berjalan di server B meskipun terputus dari server A. Saldo mungkin tidak sinkron sementara, namun layanan tetap menyala (tersedia).
?

Uji Pemahaman Mandiri

Menurut Teorema CAP, manakah pilar yang wajib dikorbankan jika kita mengutamakan sistem database yang selalu merespon sukses (Availability) di tengah jaringan server yang terputus (Partition Tolerance)?

A. Consistency (Konsistensi data)
B. Partition Tolerance (Toleransi Partisi)
C. Security (Keamanan data)

Bangun Karier Sebagai AI Engineer dalam 8 Minggu!

Info Detail