MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Генерираният UID от Mongodb съдържа думата bad

Това не означава нищо.

ObjectID е шестнадесетичен низ, който може да включва знаците 0123456789abcdef . Това означава, че всяка дума, която може да бъде написана с тези 6 букви, като "лошо", "говеждо", "мъртъв", "глух", "маце" или "кафене", има известна вероятност да се появи в тях (за точната вероятност, моля консултирайте се с нашите приятели ).

Във вашия случай низът "bad" се появява в трите байта, които са идентификаторът на машината ("74bad7"), така че всички ObjectID, създадени от една и съща машина, ще съдържат този 6-цифрен низ. Как се генерира ID на машината зависи от драйвера, но обикновено се създава с помощта на първите 6 цифри от MD5 хеша на името на хоста или на MAC адреса. Така че, когато не искате повече „лоши“ обектни идентификатори, експериментирайте с промяната им и ги форсирайте грубо, докато получите такъв, който ви харесва;)

Проблемът ви с актуализирането на вашия документ трябва да има друга причина, но предоставените от вас подробности не включват намек какъв може да е проблемът.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Изграждане на множество индекси наведнъж

  2. Намерете документ с ObjectID в mongoDB

  3. Mongo чака на 27017 дори след преинсталиране

  4. Как да използвате mongoose findOne

  5. Как мога да актуализирам множество документи в mongoose?