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

Bagaimana cara menimpa Id objek di Mongo db saat membuat Aplikasi di Sails

Perhatian :Mongo id harus seunik mungkin agar skalanya bagus. Default ObjectId terdiri dari stempel waktu, ID mesin, ID proses, dan nilai peningkatan acak. Membiarkannya hanya dengan yang terakhir akan membuatnya rawan tabrakan.

Namun, terkadang Anda sangat ingin mempercantik nilai ObjectID yang tidak pernah berakhir (yaitu ditampilkan di URL setelah encoding ). Kemudian, Anda harus mempertimbangkan untuk menggunakan strategi kenaikan atom yang sesuai .

Mengganti contoh _id:

db.testSOF.insert({_id:"myUniqueValue", a:1, b:1})

Membuat Urutan Peningkatan Otomatis :

  • Gunakan Koleksi Penghitung :Pada dasarnya koleksi terpisah yang melacak nomor terakhir dari urutan. Secara pribadi, saya merasa lebih kohesif untuk menyimpan fungsi findAndModify dalam koleksi system.js, meskipun kurang kemampuan kontrol versi.
  • Lingkaran Optimis

Sunting:

Saya menemukan masalah di mana pemilik sails-mongo berkata:

Dia menyebutkan teknik pertama yang saya tambahkan dalam jawaban ini:Gunakan Koleksi Penghitung . Dalam masalah yang sama, lewins menunjukkan solusi.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. pymongo - modul dnspython harus diinstal untuk menggunakan mongodb+srv:// URI

  2. Bagaimana menerapkan Peta Hash Berbasis Disk menggunakan MongoDB-Java

  3. Bagaimana cara mengatur rentang offset Buffer di MongoDB, Tidak memungkinkan untuk mengunggah lebih dari 16MB file di Objek BSON?

  4. NodeJS - MongoClient.Hubungkan dengan URL ke DB Selain Default

  5. Menambahkan nilai baru ke array mongo yang ada