Konsistensi data berarti data yang sama terlihat sama di mana pun. Alamat pelanggan dalam sistem penagihan sesuai dengan alamat dalam sistem pengiriman. Jumlah inventaris di gudang sesuai dengan jumlah di situs web. Ketika sistem tidak sepakat, keputusan menjadi salah. Pesanan dikirim ke alamat lama. Pelanggan membeli produk yang kehabisan stok. Konsistensi bukanlah pilihan, melainkan keharusan bagi sistem yang saling bergantung.
Sistem terdistribusi membuat konsistensi menjadi sulit. Data yang direplikasi di beberapa server dapat menjadi tidak sinkron. Partisi jaringan mengisolasi satu wilayah dari wilayah lain. Kedua wilayah menerima penulisan. Ketika partisi pulih, data saling bertentangan. Teorema CAP mengatakan Anda dapat memiliki konsistensi, ketersediaan, dan toleransi partisi, tetapi tidak ketiganya sekaligus. Sebagian besar basis data terdistribusi memilih ketersediaan dan konsistensi bertahap. Itu berarti data akan konvergen seiring waktu, tetapi ada jendela waktu di mana node yang berbeda melihat nilai yang berbeda. Konsistensi yang kuat membutuhkan koordinasi, yang menimbulkan latensi. Pilihannya tergantung pada aplikasi. Buku besar perbankan membutuhkan konsistensi yang kuat. Umpan media sosial dapat mentolerir konsistensi bertahap. Jawaban yang tepat tidak bersifat universal. Itu tergantung pada apa yang rusak ketika data tidak sesuai.
Model konsistensi
- Kuat — semua node melihat data yang sama secara langsung
- Pada akhirnya — node-node tersebut akan menyatu seiring waktu.
- Operasi yang saling berhubungan sebab akibat dilihat secara berurutan.
- Baca tulisanmu sendiri — kamu bisa melihat pembaruan tulisanmu secara langsung.
Konsistensi adalah sebuah spektrum. Pertanyaannya adalah seberapa banyak inkonsistensi yang dapat ditoleransi oleh aplikasi sebelum mengalami kerusakan.
Comments
No comments yet. Be the first to share a thought.
Leave a comment