MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment vérifier si un index est caché dans MongoDB

Depuis MongoDB 4.4, il est possible de masquer un index du planificateur de requêtes. Cela vous permet d'évaluer l'impact potentiel de la suppression d'un index sans supprimer réellement l'index.

Vous pouvez utiliser le getIndexes() méthode pour vérifier si un index est masqué ou non. Si un index est masqué, cet index affichera un hidden champ comme ayant une valeur de true (c'est-à-dire "hidden" : true ).

Exemple

Voici un exemple d'appel de getIndexes() pour retourner tous les index sur une collection appelée pets :

db.pets.getIndexes()

Résultat :

[
	{
		"v" : 2,
		"key" : {
			"_id" : 1
		},
		"name" : "_id_"
	},
	{
		"v" : 2,
		"key" : {
			"name" : 1,
			"type" : -1
		},
		"name" : "idx_name_1_type_-1"
	},
	{
		"v" : 2,
		"key" : {
			"weight" : -1
		},
		"name" : "idx_weight_-1",
		"hidden" : true
	}
]

Nous pouvons voir qu'il y a trois index, et le troisième est caché. Nous le savons car il a "hidden" : true .