해당 지역에서는 데이터베이스 모니터링이 지원되지 않습니다

쿼리 샘플 보기는 주어진 시간에 실행되는 쿼리를 확인할 수 있도록 해줍니다. 각 대상을 쿼리 및 관련 쿼리의 평균 수행 능력과 비교합니다.

데이터베이스 모니터링에서 **APM > Databases**를 클릭한 다음 UI에서 Query Samples 탭을 선택해 쿼리 샘플 조회 화면으로 이동합니다.

쿼리 샘플 페이지는 실행 쿼리와 최근 완료된 쿼리 시간의 스냅샷을 표시합니다. 시간의 스냅샷이기 때문에 _모든_쿼리를 표시하지 않지만 비율을 보여줄 수 있습니다.

검색 및 필터링

탐색하려는 데이터베이스를 선택할 수 있는 쿼리 메트릭 페이지와 달리 쿼리 샘플 페이지는 지원되는 모든 데이터베이스 제품의 쿼리를 표시합니다. source 패싯에서 필터링하여 특정 데이터베이스(Postgres 또는 MySQL)에 대한 데이터를 확인합니다.

검색 필드에 태그를 입력하여 쿼리 샘플 목록을 필터링하거나 왼쪽에 나열된 패싯을 사용합니다. 패싯은 다음을 포함합니다.

  • 핵심: 서비스, 데이터베이스 제품 소스(Postgres 또는 MySQL), 호스트 및 기간
  • 네트워크: 데이터베이스에 연결된 애플리케이션 또는 프록시에 대한 클라이언트 IP 주소 및 포트
  • 데이터베이스: 데이터베이스 이름, 실행 계획 비용 슬라이더, 인덱스, 쿼리, 쿼리문 및 사용자가 이용했거나 해당 요소로 반환된 행 수에 대한 행 개수 슬라이더
  • Postgres 및 MySQL별 패싯

옵션을 클릭하여 표에 열을 추가합니다. 열 머리글을 클릭해 특정 메트릭별로 정렬합니다.

실행 계획 비용

실행 계획 비용은 두 계획을 각각 비교하기 위해 데이터베이스가 사용하는 단위 없는 지표입니다. 지표는 블록 또는 페이지 등 데이터베이스에 있는 _항목_의 수와 대략 일치하지만 일차적으로는 단일 계획이 아니라 두 계획의 상대적 비교에 유용합니다. 실행 계획 비용 계산은 데이터베이스가 사용할 계획을 선택하는 데 도움을 줍니다.

쿼리 샘플 페이지에서 여러 쿼리에 대한 실행 계획 비용을 필터링, 정렬 및 비교할 수 있습니다. 실행 계획 비용은 절대적으로 계산되지 않습니다. 8.5의 실행 계획 비용이 있는 쿼리는 8.7 비용의 쿼리보다 더 나은 것이 아닙니다. 하지만 두 쿼리가 유사하길 바랄 경우 두 쿼리에는 상당한 차이가 있는 것이며, 그 이유를 파악하는 것이 중요할 수 있습니다. 또한, 비용별로 쿼리를 정렬하여 가장 비싼 비용의 쿼리를 네트워크 지연 등 외부 요소와는 별개로 확인할 수 있습니다.

인덱스

데이터베이스 인덱스별로 실행 계획이 있는 쿼리를 필터링할 수 있습니다. 이를 통해 특정 인덱스를 사용하는 쿼리를 확인할 수 있습니다. 대신 주(시간에 따른 쿼리 샘플 표시) 등 긴 시간 프레임을 선택하고 자주 사용되지 않는 인덱스를 확인하여(인덱스 패싯 목록에서 가장 낮은 수) 자주 사용되지 않는 인덱스를 찾을 수 있습니다. 그러면 인덱스 포함으로 얻는 성능이 데이터베이스 유지 비용에 상응하는지 고려하는 데 유용합니다.

행 개수

선택한 시간 프레임 동안 대량 행 수를 반환하거나 해당 수에 영향을 미치는 쿼리를 찾을 수 있도록 필터링하거나 정렬합니다.

기간

선택한 시간 기간 동안 실행하는 데 가장 오랜 시간이 걸린 쿼리를 찾을 수 있도록 필터링하거나 정렬합니다. 전반적인 성능을 최적화하려면 이러한 느린 쿼리의 소유자를 추적하여 개선을 논의할 수 있습니다.

샘플 상세 정보

표의 쿼리를 클릭하여 샘플 상세 정보 페이지를 엽니다. 상단의 소스, 호스트 및 클라이언트 IP 타일을 사용해 이 샘플 값별로 샘플 쿼리 페이지를 필터링하거나 클라이언트 IP용 네트워크 트래픽 메트릭 또는 호스트의 대시보드 등 기타 Datadog 정보로 이동합니다.

Sample details action tiles

예를 들어, 네트워크 트래픽 페이지를 열고 서비스별로 그룹화하여 해당 IP에서 쿼리가 실행되는 서비스를 확인할 수 있습니다.

그래프는 _상위 쿼리_의 경우 지정한 시간 기간 쿼리별 행, 기간, 실행 수 등 쿼리의 성능 매트릭을 표시합니다. 또한 각 줄은 해당 샘플 스냅샷의 성능을 나타냅니다. 메트릭을 사용할 수 없는 경우 상위 쿼리가 아니기 때문입니다. 이 경우 그래프가 비어 있게 됩니다.

Query performance metrics graphs with This Query indicator

실행 계획 섹션은 전체 시간 프레임의 모든 수집된 스냅샷에 대한 현재 샘플_및_평균/p90 기간 및 비용 통계를 표시합니다.

실행 계획은 또한 계획에서 각 노드(단계)에 대한 측정치를 표시합니다. 측정치에는 시작 비용, 총 비용, 계획 행 및 행 너비가 포함됩니다. 열 머리글을 마우스로 가리켜 각 측정치에 대한 설명을 확인하세요.

Explain plan samples statistics and step metrics

기타 시각화 탐색

기본 목록 보기 외, 시계열, 상위 목록, 표로 쿼리 샘플 데이터를 확인할 수 있습니다. 다음으로 시각화 버튼 중 하나를 클릭합니다. 데이터를 확인하는 강력한 방법을 선사할 수 있습니다. 예를 들어 데이터 센터에서 실행되는 가장 느린 쿼리를 보려면 시계열을 선택하고 Statement로 그룹화하여 평균 기간을 그래프로 봅니다.

Finding slowest queries

아니면 p90 또는 p99 기간으로 그래프화하여 보통 빠르게 실행되지만 때로 느리게 실행되는 쿼리 등 아웃라이어를 찾습니다.

표 시각화를 사용하여 보고서 같은 요약을 만들고 타인과 공유합니다. 예를 들어 성능이 낮은 쿼리(p75 기간) 표를 만들고 각 쿼리에 대한 평균 계획 비용 값을 포함할 수 있습니다.

Table of p75 duration queries

내보내기 버튼을 사용하여 엔지니어링 팀과 데이터를 공유하여 개선 노력을 집중할 영역에 대해 논의하세요.

데이터베이스 모니터링 대시보드

데이터베이스 관련 인프라 및 쿼리 메트릭 시각화를 보여주는 대시보드에 빠르게 액세스하려면 페이지 상단에서 대시보드 링크를 클릭하세요. 바로 대시보드를 사용하거나 복제 및 맞춤화하여 원하는 요구 사항을 충족하세요.

참고 자료