Cursor

MongoDB 🟡 Mid

Definition

Pointeur iterable vers les resultats d'une requete. Le curseur ne charge pas tous les documents en memoire mais les recupere par batches depuis le serveur.

Analogie

Un marque-page dans un gros livre : tu lis page par page au lieu de photocopier tout le livre d'un coup.

Exemple de code

const cursor = db.users.find({});
while (await cursor.hasNext()) {
  const doc = await cursor.next();
  process(doc);
}

Cas d'usage

Iterer sur de grands resultats sans saturer la memoire de l'application.

Anti-pattern

Garder un curseur ouvert trop longtemps sans le fermer, epuisant les ressources serveur.

Termes lies

#sgbd#interview#database#mongodb