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

MongoDB 2.2 - Memperbarui Dokumen Bersarang Array

Tidak ada cara untuk melakukannya saat ini menggunakan operasi pembaruan reguler karena alasan yang Anda catat.

Satu-satunya solusi yang dapat Anda gunakan saat ini adalah menambahkan versi ke dokumen Anda dan menggunakan penguncian optimis dengan membaca dokumen, menemukan elemen yang sesuai untuk dimodifikasi dalam aplikasi Anda, mengubah nilainya, dan kemudian menggunakan update yang menyertakan versi dalam dokumen baca (sehingga jika utas lain memperbarui dokumen antara kueri dan pembaruan Anda, Anda tidak akan menimpa perubahan tetapi harus memuat ulang dokumen dan mencoba lagi.

Strategi pembuatan versi tidak harus didasarkan pada seluruh dokumen, Anda dapat membuat versi elemen array tingkat pertama dan kemudian Anda akan dapat memperbarui hanya sub-array yang Anda perhatikan (melalui pembaruan dengan $set).




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. tidak dapat mengambil data dari sudut http

  2. Dapatkan nilai ObjectIdHex dari kueri mgo

  3. Efisiensi saat memasukkan ke mongodb (pymongo)

  4. Apakah indeks MongoDB persisten di seluruh restart?

  5. Gunakan hasil dari kueri sebelumnya di kueri lain di mongodb