Daftar Isi:
- Toko dengan nilai kunci biasanya memperdagangkan konsistensi dalam data (yaitu kemampuan untuk selalu membaca salinan nilai terbaru segera setelah pembaruan) untuk memperbaiki waktu penulisan. .
- Aerospike dan Redis adalah pengecualian yang penting untuk konsistensi akhirnya. Keduanya menggunakan cluster
Video: Day 3 Keynote: Made Here Together (Cloud Next '18) 2024
Seperti tipe database NoSQL lainnya, dengan toko dengan nilai penting, Anda dapat menukar beberapa konsistensi untuk beberapa ketersediaan. Toko dengan nilai kunci biasanya menyediakan beragam model konsistensi dan durabilitas - yaitu, antara toleransi ketersediaan dan partisi dan antara toleransi partisi dan konsisten.
Beberapa toko dengan nilai penting melangkah lebih jauh pada lengan konsistensi, meninggalkan BASE untuk dukungan konsistensi transaksional penuh ACID. Memahami tempat untuk menarik garis dapat membantu Anda mempersingkat daftar database potensial yang perlu dipertimbangkan untuk kasus penggunaan Anda.
Toko dengan nilai kunci biasanya memperdagangkan konsistensi dalam data (yaitu kemampuan untuk selalu membaca salinan nilai terbaru segera setelah pembaruan) untuk memperbaiki waktu penulisan..
Voldemort, Riak, dan Oracle NoSQL semua
akhirnya konsisten toko bernilai kunci. Mereka menggunakan metode yang disebut baca perbaikan . Inilah dua langkah yang terlibat dalam baca perbaikan :
-
Jika nilai terakhir tidak dapat diputuskan, maka klien database disajikan dengan semua opsi nilai dan dibiarkan memutuskan sendiri.
-
Contoh bagus untuk menggunakan toko kunci-nilai yang konsisten akhirnya mencakup pengiriman posting media sosial dan pengiriman ke pengguna yang ditargetkan. Jika sebuah tweet tiba terlambat atau lima menit kemudian, tidak ada bencana hilangnya data.
Aerospike dan Redis adalah pengecualian yang penting untuk konsistensi akhirnya. Keduanya menggunakan cluster
shared-nothing , yang berarti setiap kunci memiliki yang berikut ini: Simpul master:
-
Hanya master yang memberikan jawaban untuk satu kunci tunggal, yang memastikan bahwa Anda memiliki salinan terbaru. Beberapa simpul replika budak:
-
Ini berisi salinan semua data pada node induk. Aerospike menyediakan konsistensi transaksional penuh ASID dengan membiarkan modifikasi segera diputar ke disk sebelum transaksi ditandai lengkap dengan klien basis data. Aerospike berhasil melakukan itu pada kecepatan yang sangat tinggi (yang membantah klaim bahwa ACID menurunkan kecepatan tulis). Aerospike secara native menangani SSD mentah untuk penulisan data dengan melewati dukungan sistem file sistem operasi yang lebih lamban.
Tentu saja, lebih banyak SSD berarti biaya server yang lebih tinggi. Anda dapat memutuskan bahwa menggunakan Redis (dikonfigurasi untuk menyiram semua data ke disk saat tiba) cukup cepat dan menjamin daya tahan yang cukup untuk kebutuhan Anda.Pengaturan default di Redis adalah menyiram data ke disk setiap beberapa detik, membiarkan sebuah jendela kecil kehilangan data potensial jika server gagal.
Berikut adalah beberapa contoh kapan Anda memerlukan penyimpanan nilai kunci yang sesuai dengan ACID:
Saat menerima data sensor yang Anda perlukan untuk eksperimen.
-
Dalam sistem perpesanan dimana Anda harus menjamin penerimaan.
-
Redis, misalnya, menyediakan mekanisme Publikasikan / Berlangganan yang berfungsi sebagai server pesan kembali. Fitur ini dikombinasikan dengan dukungan ACID memungkinkan untuk pesan yang tahan lama.