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

Cara yang tepat untuk menangani perubahan skema di MongoDB dengan driver java

Saya pikir Anda dengan jujur ​​​​telah mengisyaratkan jawaban yang paling sederhana.

Pertama, perbarui lapisan akses data Anda untuk menangani skema baru dan lama:Sisipan dan pembaruan harus memperbarui baik yang baru maupun yang lama agar semuanya tetap sinkron. Kueri seharusnya hanya melihat skema lama karena itu adalah sumber catatan pada saat ini.

Kemudian salin semua data dari skema lama ke skema baru.

Kemudian perbarui akses data untuk sekarang meminta data baru. Ini akan membuat data lama tetap diperbarui, tetapi akan memungkinkan pengujian penuh terhadap data baru sebelum membuat perubahan apa pun yang akan mengakibatkan dua kumpulan data tidak sinkron. Ini juga akan membantu memfasilitasi pembaruan bergulir (mis. aplikasi dengan kode akses data baru dan lama akan tetap berfungsi secara bersamaan.

Terakhir, perbarui lapisan akses data agar hanya mengakses skema baru, lalu hapus data lama.

Kecuali untuk tahap terakhir ini, Anda selalu dapat memutar kembali ke versi sebelumnya jika mengalami masalah.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. menggunakan kunci sebagai nilai di Mongoengine

  2. buat dokumen mongodb dengan subdokumen secara atom?

  3. otentikasi rmongodb selalu gagal

  4. meteor, mongodb, spasi, bagaimana cara menampilkan hanya 2 tempat desimal

  5. Cara mencocokkan string yang terdiri dari karakter khusus seperti tanda hubung dan spasi