Query Performance Insight 살펴보기
가장 많은 리소스를 사용하는 쿼리를 식별하는 것이 데이터베이스 성능 튜닝 작업의 첫 번째 단계입니다. 이전 버전의 SQL Server에서는 광범위한 추적과 일련의 복잡한 SQL 스크립트가 필요했기 때문에 데이터 수집 프로세스가 번거로울 수 있습니다.
문제가 있는 쿼리 식별
Azure SQL Database는 관리자가 리소스를 많이 사용하는 쿼리를 빠르게 식별하는 데 사용할 수 있는 Query Performance Insight라는 도구를 제공합니다. Azure SQL Database 기본 블레이드의 지능형 성능 섹션에서 Query Performance Insight로 이동할 수 있습니다.
Query Performance Insight를 시작하는 경우 장기 실행 쿼리, 리소스를 가장 많이 사용하는 쿼리 또는 사용자 지정 필터를 필터링할 수 있는 세 가지 단추를 찾을 수 있습니다. 기본값은 리소스 사용 쿼리입니다. 이 탭에는 왼쪽에서 선택한 특정 리소스를 기준으로 정렬된 상위 5개의 쿼리가 표시됩니다. 이 경우 CPU를 기준으로 정렬됩니다. 또한 데이터 IO 및 로그 IO 메트릭을 기준으로 정렬하는 다른 옵션이 있습니다.
하단 그리드에서 행을 클릭하여 개별 쿼리를 살펴볼 수 있습니다. 각 행은 위에 있는 막대 그래프의 색상과 관련된 고유한 색상으로 식별됩니다.
장기 실행 쿼리로 전환하면 이전과 비슷한 레이아웃을 볼 수 있습니다. 이 경우 메트릭은 지난 24시간 동안의 기간을 기준으로 정렬된 상위 5개의 쿼리로 제한되며 총 집계입니다. 그래프 아래 표에서 행을 클릭하여 특정 쿼리를 검사할 수 있습니다.
사용자 지정 탭으로 전환하면 다른 두 옵션에 비해 유연성이 약간 증가합니다.
이 탭에서 성능 데이터를 검사하는 방법을 추가로 정의할 수 있습니다. 데이터를 시각적으로 표현할 수 있는 여러 드롭다운 메뉴를 제공합니다. 핵심 메트릭은 CPU, 로그 IO, 데이터 IO 및 메모리입니다. 이 메트릭은 데이터베이스 성능의 요소이며, 상한은 Azure SQL Database의 서비스 계층 및 컴퓨팅 리소스를 통해 결정됩니다.
개별 쿼리를 분석하면 쿼리 ID와 쿼리 자체뿐 아니라 쿼리 집계 유형 및 연결된 기간을 볼 수 있습니다. 또한 쿼리 ID는 쿼리 저장소에 있는 쿼리 ID와 상관 관계가 있습니다. 그러면 Query Performance Insights에서 수집한 메트릭을 쿼리 저장소 자체에서 쉽게 찾을 수 있으므로, 필요한 경우 심층 분석이나 문제 해결이 가능합니다.
Query Performance Insight는 쿼리의 실행 계획을 표시하지 않지만 해당 쿼리를 신속하게 식별하고 정보를 사용하여 데이터베이스의 쿼리 저장소에서 계획을 추출할 수 있습니다.