문서 메뉴
문서 홈
/
MongoDB 매뉴얼
/ / /

쿼리 성능 분석

이 페이지의 내용

  • 느린 쿼리 식별
  • 성능 개요
  • 느린 쿼리 분석
  • 고급 쿼리 분석 수행

MongoDB는 워크로드의 성능을 검사할 수 있는 여러 가지 방법을 제공하여 쿼리 성능을 이해하고 장기 실행 쿼리를 식별할 수 있도록 합니다. 쿼리 성능을 이해하면 효과적인 인덱스를 구축하고 애플리케이션이 중요한 쿼리를 효율적으로 실행하도록 할 수 있습니다.

다음 방법을 사용하여 배포서버에서 발생하는 느린 쿼리를 식별합니다.

다음 메서드는 배포 성능에 대한 개요를 제공합니다. 다음 방법을 사용하여 해결해야 하는 성능 문제가 있는지 확인합니다.

메서드
가용성
설명
Atlas Performance Advisor 사용

M10+ Atlas 클러스터

Atlas Performance Advisor는 느린 쿼리를 모니터링하고 성능 개선을 위한 새로운 인덱스를 제안합니다. 자세한 내용은 느린 쿼리 모니터링 및 개선을 참조하세요.
Atlas에서 진행 중인 작업 확인

M10+ Atlas 클러스터

Atlas 실시간 성능 패널 (RTPP)을 사용하여 현재 네트워크 트래픽, 데이터베이스 작업 및 하드웨어 통계를 확인할 수 있습니다.
로컬에서 진행 중인 작업 확인

Atlas 클러스터 및 자체 호스팅 배포

서버 지표 확인

Atlas 클러스터 및 자체 호스팅 배포

Atlas 클러스터의 경우 클러스터 메트릭을 확인하여 성능 문제를 파악할 수 있습니다.

자체 호스팅 배포의 경우 serverStatus 명령은 성능 저하 및 쿼리 실행 이상을 나타낼 수 있는 메트릭을 제공합니다.

인덱스 통계 보기

Atlas 클러스터 및 자체 호스팅 배포

$indexStats 애그리게이션 단계에서는 컬렉션의 인덱스와 개별 인덱스가 사용되는 빈도에 대한 정보를 반환합니다. 쓰기 성능을 향상시키기 위해 제거할 수 있는 사용하지 않는 인덱스를 식별하려면 $indexStats 를 사용합니다.

다음 방법을 사용하여 느린 쿼리를 분석하고 성능 저하의 원인을 파악할 수 있습니다.

메서드
가용성
설명
Atlas 쿼리 프로파일러 사용

M10+ Atlas 클러스터

Atlas 쿼리 프로파일러는 장기 실행 작업 및 성능 통계를 표시합니다. 자세한 내용은 쿼리 성능 모니터링을 참조하세요.
데이터베이스 프로파일러 활성화

Atlas 클러스터 및 자체 호스팅 배포

활성화하면 데이터베이스 프로파일러가 느린 쿼리에 대한 정보를 system.profile collection에 저장합니다.

자세한 내용은 데이터베이스 프로파일러를 참조하세요.

진단 로그에서 느린 쿼리 보기

Atlas 클러스터 및 자체 호스팅 배포

MongoDB는 느린 작업 임계값(기본값 100 밀리초)을 초과하는 쿼리를 진단 로그에 기록합니다.

진단 로그를 확인하여 문제가 있는 쿼리를 식별하고 인덱스가 도움이 되는 쿼리를 확인합니다.

설명 결과 보기

Atlas 클러스터 및 자체 호스팅 배포

쿼리 설명 결과에는 쿼리 계획 및 실행 통계에 대한 정보가 표시됩니다. 결과 설명을 사용하여 쿼리에 대한 다음 정보를 확인할 수 있습니다.

  • 쿼리를 실행하는 데 걸린 시간

  • 쿼리가 인덱스를 사용했는지 여부

  • 쿼리를 수행하기 위해 스캔한 문서 및 인덱스 키의 수

설명 결과를 보려면 다음 방법을 사용합니다.

Explain 결과 출력에 대해 자세히 알아보려면 Explain 결과Explain Plan 결과 해석을 참조하세요.

다음 메서드는 문제가 있는 쿼리를 심층 조사하는 데 적합하며 세분화된 성능 인사이트를 제공할 수 있습니다.

메서드
가용성
설명
계획 캐시 통계 보기

Atlas 클러스터 및 자체 호스팅 배포

$planCacheStats 애그리게이션 단계에서는 컬렉션의 계획 캐시에 대한 정보를 반환합니다.

계획 캐시에는 쿼리 플래너가 쿼리를 효율적으로 완료하기 위해 사용하는 쿼리 계획이 포함되어 있습니다. 일반적으로 계획 캐시에는 가장 일반적으로 실행되는 쿼리에 대한 항목이 포함되어야 합니다.

← 쿼리 최적화