MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Konsistensi baca-Anda-tulis-tulis di Mongodb

Ada beberapa poin tentang pertanyaan ini.

  1. Anda tidak dijamin memiliki konsistensi baca-setelah-tulis kecuali Anda menggunakan salah satu "safe=true" , "w=1" (atau lebih besar) atau "j=true" dengan tulisanmu. Anda dapat menyertakan ini sebagai bagian dari insert() atau update() perintah, atau gunakan set_lasterror_options() untuk menyetel opsi ini untuk koneksi, database, atau koleksi yang Anda gunakan.

  2. Jika Anda mengizinkan pembacaan dari node sekunder, (misalnya ReadPreference selain PRIMARY), maka Anda tidak akan mendapatkan semantik read-after-write, tetapi hanya konsistensi akhirnya.

  3. Jika Anda menggunakan ReadPreference dari PRIMARY dan Anda menyetel opsi kesalahan terakhir yang sesuai, maka Anda dijamin mendapatkan semantik baca-setelah-tulis pada semua operasi yang menggunakan soket yang sama, yaitu utas yang sama.

  4. Jika Anda menggunakan banyak utas, dan Anda TIDAK membaca dari simpul sekunder, maka Anda dijamin mendapatkan konsistensi baca-setelah-tulis selama Anda mengeluarkan pembacaan di utas kedua setelah penulisan selesai di utas pertama. Anda dapat menggunakan primitif sinkronisasi utas standar untuk memastikan hal ini.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Meteor.js - cara melakukan pencarian pengguna melalui beberapa koleksi

  2. Perbarui array multi-sarang di Mongodb

  3. Cara Mengonversi Tampilan MongoDB menjadi Koleksi

  4. ActionDispatch::Routing::RouteSet#call Rails 4.1 sangat lambat

  5. Pasang Banyak Rekaman dengan MongoDb