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

Kdy vyprší platnost dokumentu mongodb po jeho aktualizaci?

Správná odpověď je c)

Vlastnost expireAfterSeconds vždy vyžaduje index v poli, které obsahuje datum BSON, protože obsah tohoto pole data se používá k výběru položek k odstranění.

Pokud chcete, aby aktualizace dokumentu resetovala dobu životnosti, aktualizujte také pole indexovaného data na aktuální čas.

Pokud chcete, aby aktualizace neovlivnila TTL, prostě neaktualizujte datum.

Mějte však na paměti, že expireAfterSeconds nezaručuje okamžité smazání dokumentu. Mazání se provádí pomocí úlohy na pozadí, která běží každou minutu. Tato úloha má nízkou prioritu a může ji MongoDB odložit, když je aktuální zatížení vysoké. Takže když je pro váš případ použití důležité, aby byly časy vypršení platnosti respektovány přesně na sekundu, měli byste přidat další kontrolu na úrovni aplikace.

Tato funkce je zdokumentována zde:http://docs.mongodb.org/manual/ tutorial/expire-data/



  1. Proč Spring Data MongoDB nedokáže vytvořit instanci této struktury vnořeného typu?

  2. Kombinace operátorů $regex a $or v Mongo

  3. Existuje ekvivalentní nástroj jako sql profiler pro mongodb?

  4. Mongodb třídí bez ohledu na malá a velká písmena