설명
이 페이지의 내용
$explain
참고
v3.0이후 더 이상 사용되지 않음
v3.2 부터
$explain
연산자 는mongosh
에서 더 이상 사용되지 않습니다.mongosh
에서는db.collection.explain()
또는cursor.explain()
을 대신 사용합니다.$explain
연산자는 쿼리 계획에 대한 정보를 제공합니다. 쿼리를 반환하는 데 사용되는 프로세스와 인덱스를 설명하는 문서를 반환합니다. 이는 쿼리를 최적화하려고 할 때 유용한 인사이트를 제공할 수 있습니다. 출력에 대한 자세한 내용은 cursor.explain()을 참조하세요.다음 형식 중 하나로
$explain
연산자 를 지정할 수 있습니다.db.collection.find()._addSpecial( "$explain", 1 ) db.collection.find( { $query: {}, $explain: 1 } ) mongosh
에서는explain()
메서드를 통해 쿼리 계획 정보를 검색할 수도 있습니다.db.collection.find().explain()
행동
$explain
은(는) 실제 쿼리를 실행하여 결과를 확인합니다. $explain
를 사용하여 쿼리를 실행하는 것과 없이 실행하는 것 사이에는 몇 가지 차이점이 있지만, 일반적으로 둘 사이의 성능은 비슷합니다. 따라서 쿼리가 느리면 $explain
작업도 느려집니다.
또한 $explain
작업은 후보 쿼리 계획 세트를 재평가하므로 $explain
작업이 일반 쿼리와 다르게 수행될 수 있습니다. 결과적으로 이러한 작업은 일반적으로 MongoDB가 쿼리를 수행하는 방법 에 대한 정확한 설명을 제공하지만 이러한 쿼리의 길이를 반영하지는 않습니다.