Desde MongoDB 4.4, es posible ocultar un índice del planificador de consultas. Esto le permite evaluar el impacto potencial de eliminar un índice sin eliminarlo realmente.
Puede usar getIndexes()
método para comprobar si un índice está oculto o no. Si un índice está oculto, ese índice mostrará un hidden
campo como si tuviera un valor de true
(es decir, "hidden" : true
).
Ejemplo
Aquí hay un ejemplo de llamar a getIndexes()
para devolver todos los índices en una colección llamada pets
:
db.pets.getIndexes()
Resultado:
[ { "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 } ]
Podemos ver que hay tres índices, y el tercero está oculto. Lo sabemos porque tiene "hidden" : true
.