ScholarGate
Asisten

Teorema CAP dan Model Konsistensi

Teorema CAP menyatakan bahwa penyimpanan data terdistribusi yang menghadapi partisi jaringan harus mengorbankan konsistensi atau ketersediaan, dan model konsistensi menentukan dengan tepat jaminan apa yang diberikan sistem mengenai visibilitas dan urutan pembaruan.

Temukan Topik dengan PaperMindSegeraFind papers & topics
Tools & resources
Unduh salindia
Learn & explore
VideoSegera

Definition

Teorema CAP menegaskan bahwa sistem data bersama berjaringan dapat menjamin paling banyak dua dari konsistensi, ketersediaan, dan toleransi partisi secara bersamaan; model konsistensi adalah kontrak yang menentukan apa yang dapat diamati aplikasi tentang urutan dan visibilitas pembacaan dan penulisan di seluruh replika.

Scope

Topik ini mencakup teorema CAP dan formalisasinya, pemahaman praktis bahwa pertukaran yang sebenarnya hanya muncul selama partisi jaringan, dan penyempurnaan PACELC yang dihasilkan. Ini mencakup spektrum model konsistensi — dari konsistensi kuat (linearizable) melalui konsistensi kausal hingga konsistensi eventual — dan gaya BASE yang kontras dengan ACID. Ini membahas bagaimana model-model ini memandu desain penyimpanan data yang direplikasi. Ini tidak termasuk protokol konsensus dan komit yang digunakan untuk mengimplementasikan konsistensi kuat, yang dibahas dalam basis data terdistribusi.

Core questions

  • Apa sebenarnya arti konsistensi, ketersediaan, dan toleransi partisi dalam CAP?
  • Mengapa pilihan sebenarnya antara konsistensi dan ketersediaan hanya dipaksakan selama partisi?
  • Bagaimana konsistensi kuat, kausal, dan eventual berbeda dalam jaminannya?
  • Apa yang dijanjikan konsistensi eventual, dan apa yang tidak?
  • Bagaimana filosofi BASE kontras dengan ACID?

Key concepts

  • konsistensi, ketersediaan, toleransi partisi
  • partisi jaringan
  • linearizabilitas / konsistensi kuat
  • konsistensi kausal
  • konsistensi eventual
  • PACELC
  • BASE versus ACID
  • resolusi konflik

Key theories

Teorema CAP
Diformalkan oleh Gilbert dan Lynch, CAP menunjukkan bahwa ketika jaringan terpartisi, penyimpanan yang direplikasi harus memilih antara mengembalikan data yang mungkin usang (ketersediaan) dan menolak layanan untuk mempertahankan satu nilai yang konsisten (konsistensi); toleransi partisi tidak opsional dalam jaringan nyata.
Spektrum konsistensi
Model konsistensi berkisar dari konsistensi kuat (linearizable), di mana pembacaan selalu melihat penulisan terbaru, melalui konsistensi kausal, yang mempertahankan urutan sebab-akibat, hingga konsistensi eventual, di mana replika menyatu seiring waktu tanpa penulisan baru.
BASE versus ACID
Sistem yang sangat tersedia sering mengadopsi gaya BASE — pada dasarnya tersedia, status lunak, konsisten secara eventual — dengan sengaja melonggarkan jaminan ACID yang kuat untuk tetap responsif di bawah partisi dan pada skala besar.

Clinical relevance

CAP dan model konsistensi membingkai pilihan desain sentral dalam sistem data terdistribusi: apakah penyimpanan memprioritaskan selalu menjawab (ketersediaan) atau selalu menjawab dengan benar (konsistensi) ketika jaringan gagal, sebuah keputusan yang membentuk perilaku dan jaminan setiap aplikasi yang didistribusikan secara global.

History

Eric Brewer mengemukakan pertukaran CAP sekitar tahun 2000; Gilbert dan Lynch membuktikannya secara formal pada tahun 2002. Dynamo Amazon (2007) dan esai Vogels tahun 2009 mempopulerkan konsistensi eventual dalam praktik. Retrospeksi Brewer tahun 2012 mengklarifikasi bahwa CAP melarang konsistensi dan ketersediaan yang sempurna hanya selama partisi, dan formulasi PACELC kemudian menambahkan pertukaran latensi-konsistensi dalam kasus tanpa partisi.

Debates

Seberapa mendasarkah pertukaran konsistensi-ketersediaan
Pembacaan awal memperlakukan CAP sebagai pemaksaan pilihan permanen antara konsistensi dan ketersediaan; analisis selanjutnya, termasuk retrospeksi Brewer, berpendapat bahwa pertukaran tersebut hanya terjadi selama partisi dan bahwa sistem dapat sebagian besar konsisten dan tersedia dalam kondisi lain, membingkai ulang seberapa ketat CAP membatasi desain.

Key figures

  • Eric Brewer
  • Seth Gilbert
  • Nancy Lynch
  • Werner Vogels

Related topics

Seminal works

  • gilbert2002
  • brewer2012
  • vogels2009

Frequently asked questions

Apakah CAP berarti saya hanya bisa memiliki dua dari tiga properti?
Frasa populer 'pilih dua' menyesatkan. Toleransi partisi sebenarnya tidak opsional dalam sistem terdistribusi, jadi pilihan yang sebenarnya adalah antara konsistensi dan ketersediaan, dan pilihan itu hanya harus dibuat saat partisi benar-benar terjadi. Ketika jaringan sehat, sistem dapat menyediakan konsistensi dan ketersediaan.
Apa sebenarnya yang dijamin oleh konsistensi eventual?
Ini menjamin bahwa jika tidak ada pembaruan baru yang dibuat pada item data, semua replika pada akhirnya akan menyatu ke nilai yang sama. Ini tidak menjamin kapan, atau bahwa pembacaan akan mencerminkan penulisan terbaru, sehingga aplikasi yang menggunakan konsistensi eventual harus mentolerir pembacaan yang sementara usang atau bertentangan dan sering kali menangani resolusi konflik sendiri.

Methods for this concept

Related concepts