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

Indeks pada bidang ts di oplog.rs tidak diperbarui

Seperti yang Anda temukan, indeks sekunder tidak didukung pada kumpulan sistem seperti local.oplog.rs dan *.system.profile . Di MongoDB 2.4 dan yang lebih lama, indeks tampaknya telah dibuat, tetapi tidak pernah benar-benar diperbarui. Versi MongoDB (2.6+) yang lebih baru menampilkan kesalahan jika Anda mencoba memperbarui koleksi sistem secara langsung dengan perubahan yang tidak didukung seperti mencoba membuat indeks tambahan.

oplog.rs koleksi pasti "istimewa" karena tujuan penggunaannya hanya untuk replikasi. Replikasi internal membuat beberapa asumsi tentang operasi yang diharapkan untuk oplog atas dasar ini. Misalnya, replikasi hanya perlu memasukkan entri oplog -- tidak seperti koleksi yang dibatasi yang dapat Anda buat sendiri, entri oplog tidak pernah diperbarui.

Aplikasi diharapkan membaca oplog dengan kursor yang dapat disesuaikan jika perlu mengikuti entri baru yang dimasukkan ke dalam oplog, atau untuk melakukan pencarian menggunakan $natural pesan.

Tutorial kursor tailable masuk ke beberapa detail lebih lanjut tentang penggunaan, tetapi beberapa poin khusus yang perlu diperhatikan adalah:

  • Kursor yang dapat disesuaikan tidak menggunakan indeks dan mengembalikan dokumen secara alami.
  • Karena kursor tailable tidak menggunakan indeks, pemindaian awal untuk kueri mungkin mahal; tetapi, setelah kursor melelahkan, pengambilan selanjutnya dari dokumen yang baru ditambahkan tidak mahal


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Ubah string menjadi MongoDB BsonDocument

  2. spring data grup mongodb oleh

  3. Dorong nilai baru ke array dalam mongodb - mongodb/php

  4. Bagaimana cara memvalidasi anggota bidang array?

  5. PHP tidak dapat menemukan driver MongoDB