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

Apakah Mongodb ObjectID unik di antara dokumen?

Ini unik untuk semua tujuan praktis. Ketidak-unik-an yang disebutkan agak teoretis.

ObjectId dibuat dari

  • cap waktu (detik sejak zaman)
  • pengidentifikasi mesin
  • id proses
  • dan penghitung 3 byte yang dimulai dengan nilai acak setiap detik

Jadi, pada median, kecuali Anda menulis lebih dari 3080 dokumen per detik per klien, Anda harus menyimpannya. Perlu diperhatikan bahwa _id memiliki batasan unik:Genap jika Anda akan mencoba untuk menulis ObjectId yang sama dua kali, akan ada pengecualian.

Catatan tambahan:bahkan algoritma hash seperti MD5 atau (pada tingkat lebih rendah) SHA256 memiliki sedikit kemungkinan tabrakan. Tetapi dengan batasan yang unik, Anda aman.

Sunting :Karena pengecualian dilemparkan dalam kasus yang sangat, Sangat, SANGAT jarang terjadi bahwa dua ObjectIds identik dihasilkan dan dicoba untuk ditulis secara bersamaan, Anda cukup menanganinya dengan membuat ObjectId baru dan mencoba menyimpan dokumen lagi.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Skema untuk Peringkat Pengguna - DB Kunci/Nilai

  2. Dampak Performa Meltdown pada MongoDB:AWS, Azure &DigitalOcean

  3. Dapatkan hitungan Bidang di setiap dokumen melalui kueri menggunakan driver Java MongoDB

  4. Luwak memperbarui banyak dokumen tidak memperbarui apa pun

  5. Ganti nama bidang tipe kompleks yang terletak di array