최고의 MongoDB의 쿼리 분석 튜토리얼 2024년, 이 튜토리얼에서는 () 설명 사용,() 힌트를 사용하여,를 배울 수 있습니다.
제안 된 인덱스의 유효성을 보장하기 MongoDB의 쿼리 및 분석 성능 분석을 조회하기위한 중요한 도구이다.
MongoDB의 쿼리 분석에 일반적으로 사용되는 기능은 다음과 같습니다 설명 ()와 힌트 ().
동작 쿼리 정보를 제공합니다 설명 인덱스 및 쿼리 통계를 사용합니다. 인덱스를 최적화하는 데 도움이.
다음에 우리는 컬렉션의 인덱스 성과 _ 이름의 사용자를 생성 :
>db.users.ensureIndex({gender:1,user_name:1}) </p> <p>现在在查询语句中使用 explain :</p> <pre> >db.users.find({gender:"M"},{user_name:1,_id:0}).explain()
위의 쿼리는 다음과 같은 결과를 반환 () 설명 :
{ "cursor" : "BtreeCursor gender_1_user_name_1", "isMultiKey" : false, "n" : 1, "nscannedObjects" : 0, "nscanned" : 1, "nscannedObjectsAllPlans" : 0, "nscannedAllPlans" : 1, "scanAndOrder" : false, "indexOnly" : true, "nYields" : 0, "nChunkSkips" : 0, "millis" : 0, "indexBounds" : { "gender" : [ [ "M", "M" ] ], "user_name" : [ [ { "$minElement" : 1 }, { "$maxElement" : 1 } ] ] } }
이제, 우리는 결과 세트의 필드를 확인 :
MongoDB의 쿼리 최적화 프로그램은 일반적으로 아주 잘 작동하지만,하지만 당신은 또한 지정된 인덱스를 사용하는 MongoDB를 강제로 힌트를 사용할 수 있습니다.
이 방법은 일부 경우에 성능을 향상시킬 것이다. 컬렉션의 인덱스와 쿼리 필드를 두 개 이상 (일부 필드의 색인이있다) 실행합니다.
예를 들면 다음 쿼리는 쿼리에 성별과 _ 이름 인덱스 필드를 지정 사용
>db.users.find({gender:"M"},{user_name:1,_id:0}).hint({gender:1,user_name:1})
당신은 위의 쿼리를 구문 분석 설명 () 함수를 사용할 수 있습니다 :
>db.users.find({gender:"M"},{user_name:1,_id:0}).hint({gender:1,user_name:1}).explain()