$indexStats - Amazon DocumentDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

$indexStats

La phase $indexStats d'agrégation dans Amazon DocumentDB fournit un aperçu de l'utilisation des index au sein d'une collection. Cet opérateur vous permet de surveiller les modèles d'accès à vos index, ce qui peut vous aider à prendre des décisions éclairées concernant la gestion et l'optimisation des index.

Paramètres

Aucune

Exemple (MongoDB Shell)

L'exemple suivant montre comment utiliser l'$indexStatsopérateur pour analyser l'utilisation de l'index dans une collection Amazon DocumentDB.

Création d'exemples de documents

db.grocery.insertMany([ { _id: 1, product: "milk", quantity: 10 }, { _id: 2, product: "eggs", quantity: 20 }, { _id: 3, product: "bread", quantity: 5 }, { _id: 4, product: "cheese", quantity: 15 }, { _id: 5, product: "apple", quantity: 8 } ]);

Exemple de requête

db.grocery.aggregate([ { $indexStats: {} } ]);

Sortie

[ { "name": "_id_", "key": { "_id": 1 }, "host": "docdb-cluster-1.cluster-123456789.us-west-2.docdb.amazonaws.com", "accesses": { "ops": NumberLong(5), "since": ISODate("2023-04-06T12:34:56.789Z") } }, { "name": "product_1", "key": { "product": 1 }, "host": "docdb-cluster-1.cluster-123456789.us-west-2.docdb.amazonaws.com", "accesses": { "ops": NumberLong(10), "since": ISODate("2023-04-06T12:34:56.789Z") } } ]

Dans cet exemple, l'$indexStatsopérateur indique que l'_id_index a été consulté 5 fois et que l'product_1index a été consulté 10 fois depuis la dernière réinitialisation ou le dernier redémarrage du serveur.

Exemples de code

Pour afficher un exemple de code d'utilisation de la $indexStats commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :

Node.js
const { MongoClient } = require('mongodb'); async function indexStats() { const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); const db = client.db('test'); const result = await db.collection('grocery').aggregate([ { $indexStats: {} } ]).toArray(); console.log(result); await client.close(); } indexStats();
Python
from pymongo import MongoClient def index_stats(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client['test'] result = list(db.grocery.aggregate([ { '$indexStats': {} } ])) print(result) client.close() index_stats()