Collection fixe MongoDB
Les collections MongoDB Capped sont des collections avec d'excellentes performances et une taille fixe. Pour une taille fixe, nous pouvons imaginer que c'est comme une file d'attente circulaire. Lorsque l'espace de collection est utilisé, la collection sera à nouveau insérée. L’élément écrasera l’élément head initial !
Créer une collection fixe
Nous créons une collection fixe via createCollection, et l'option capped est définie sur true :
>db.createCollection("cappedLogCollection",{capped:true,size:10000})
Vous pouvez également spécifier le nombre de documents, plus l'attribut max:1000 :
>db.createCollection("cappedLogCollection",{capped:true,size:10000,max:1000})
Déterminez si la collection est une collection fixe :
>db.cappedLogCollection.isCapped()
Si vous devez convertir une collection existante en une collection fixe, vous pouvez utiliser la commande suivante :
>db.runCommand({"convertToCapped":"posts",size:10000})
Ci-dessus Le code convertit notre collection de publications existante en une collection fixe.
Requête de collection fixe
Les documents de collection fixes sont stockés dans l'ordre d'insertion. Par défaut, les requêtes sont renvoyées dans l'ordre d'insertion. Vous pouvez également utiliser $natural pour ajuster l'ordre de retour.
>db.cappedLogCollection.find().sort({$natural:-1})
Les fonctionnalités fonctionnelles des collections fixes
peuvent être insérées et mises à jour, mais la mise à jour ne peut pas dépasser la taille de la collection, sinon la mise à jour échoue et la suppression n'est pas autorisée, mais supprimez () peut être appelé pour supprimer la collection. Toutes les lignes de , mais la collection doit être reconstruite explicitement après la suppression.
La taille maximale d'une collection plafonnée sur une machine 32 bits est d'environ 482,5 Mo. Sur une machine 64 bits, elle n'est limitée que par la taille du fichier système.
Attributs et utilisation des collections fixes
Attributs
Attribut 1 : l'insertion de collections fixes est extrêmement rapide
Attribut 2 : La sortie de la requête dans l'ordre d'insertion est extrêmement rapide
Attribut 3 : Lors de l'insertion des données les plus récentes, les données les plus anciennes peuvent être éliminées
Utilisation
Utilisation 1 : stocker les informations du journal
Utilisation 2 : mettre en cache un petit nombre de documents