sql >> Databáze >  >> NoSQL >> MongoDB

Mongodb:kdy volat secureIndex?

Zdá se, že můj komentář byl trochu nepochopený, takže to upřesním. Nezáleží na tom, kdy to zavoláte pokud je voláno v určitém okamžiku předtím, než poprvé zavoláte find(). Jinými slovy, nezáleží na tom, kdy index vytvoříte, pokud je tam předtím, než očekáváte, že jej použijete.

Běžným vzorem, který jsem viděl hodně, je kódování ensureIndex ve stejnou dobu (a na stejném místě) jako find() volání. ensureIndex zkontroluje, zda index existuje, a pokud ne, vytvoří jej. Volání secureindex před voláním find() nepochybně znamená určitou režii (ač velmi malou), takže je lepší to nedělat.

Volám ensureIndex v kódu, abyste zjednodušili nasazení a nemuseli spravovat databázi a kódovou základnu samostatně. Kompromis snadného nasazení vyvažuje nadbytečnost následných volání pro zajištění Indexu (pro mě.)



  1. Chyba dotazování vnořených dokumentů Mongodb Převádí se kruhová struktura na JSON

  2. mongodb získá celý dokument z hodnoty

  3. Získání seznamu všech databází s Mongoose

  4. MongoDB:najít čas provedení příkazu count() na milionech záznamů v kolekci?