sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur man kontrollerar om ett index är dolt i MongoDB

Från MongoDB 4.4 är det möjligt att dölja ett index från frågeplaneraren. Detta låter dig utvärdera den potentiella effekten av att ta bort ett index utan att faktiskt ta bort indexet.

Du kan använda getIndexes() metod för att kontrollera om ett index är dolt eller inte. Om ett index är dolt kommer det indexet att visa en hidden fältet har värdet true (dvs. "hidden" : true ).

Exempel

Här är ett exempel på hur du anropar getIndexes() för att returnera alla index på en samling som heter pets :

db.pets.getIndexes()

Resultat:

[
	{
		"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
	}
]

Vi kan se att det finns tre index, och det tredje är dolt. Vi vet detta eftersom det har "hidden" : true .


  1. Hur skapar jag en resque worker automatiskt vid uppstart?

  2. Kan redis pipeline flera kommandon som beror på tidigare?

  3. Inget svar efter anslutning från selleri till redis via ssl

  4. Stöder Spring Data Redis (1.3.2.RELEASE) JedisSentinelPool of jedis?