스크립트 성능 분석

SQL Server Data Tools에서 제공하는 도구를 사용하여 쿼리, 저장 프로시저 또는 스크립트의 성능을 향상시킬 수 있는지 여부를 확인할 수 있습니다. 예를 들어 자주 사용하는 쿼리의 응답 시간 등 클라이언트 통계를 모니터링하면 테이블에 있는 쿼리나 인덱스에 대한 변경이 필요한지 알 수 있습니다. 이러한 통계에는 클라이언트 실행 시간, 쿼리 프로필, 전송 및 수신된 패킷/바이트 수가 포함될 수 있습니다.

또한 애플리케이션이 데이터베이스에 전송하는 애플리케이션 쿼리 및 업데이트를 분석하고 이러한 쿼리 및 업데이트가 데이터베이스에 포함된 데이터 및 데이터베이스 스키마와 상호 작용하는 방식을 분석하면 일부 성능 문제를 해결하는 데 큰 도움이 됩니다. 실행 계획에는 SQL Server 쿼리 최적화가 선택한 데이터 검색 방법과 특정 문 및 쿼리의 실행 비용이 그래픽으로 표시됩니다. 따라서 SQL Server가 SQL 쿼리를 처리하는 방법을 이해하고 성능 저하의 원인을 파악하는 데 도움이 될 수 있습니다.

클라이언트 통계 사용

Transact-SQL 편집기에서 스크립트나 쿼리를 실행하는 경우 해당 실행에 대해 애플리케이션 프로필, 네트워크 및 시간 통계 등의 클라이언트 통계를 수집하도록 선택할 수 있습니다. 이러한 메트릭을 사용하면 스크립트의 효율성을 측정하거나 다른 스크립트를 벤치마크할 수 있습니다.

클라이언트 통계 수집을 설정/해제하려면 Transact-SQL 편집기가 열려 있는 상태에서 데이터 메뉴의 Transact-SQL 편집기를 가리키고 실행 설정클라이언트 통계 포함을 클릭합니다. 또는 Transact-SQL 편집기 도구 모음의 클라이언트 통계 포함 단추(오른쪽에서 다섯 번째 단추)를 클릭하거나, Transact-SQL 편집기를 마우스 오른쪽 단추로 클릭하고 실행 설정클라이언트 통계 포함을 클릭해도 됩니다. 쿼리에 대한 통계를 수집하려면 실행하기 전에 이 기능을 활성화해야 합니다.

클라이언트 통계를 활성화하면 쿼리 실행 시 메시지 탭 옆에 통계 탭이 나타납니다. 클라이언트 통계를 해제한 경우에는 통계 탭이 나타나지 않습니다. 연속 쿼리 실행의 통계는 평균 값과 함께 나열됩니다.

수집된 통계에 대한 자세한 내용은 이 항목의 쿼리 창 통계 창"클라이언트 통계 탭" 섹션을 참조하세요.

실행 계획 사용

실행 계획은 데이터베이스 엔진이 테이블을 탐색하고 인덱스를 사용하여 쿼리 또는 업데이트와 같은 기타 DML 문에 대한 데이터에 액세스하거나 처리하는 방법을 표시합니다. 이 그래픽 측면의 접근 방식은 쿼리의 성능 특성을 이해하는 데 굉장히 유용합니다.

분석할 쿼리가 포함된 Transact-SQL 스크립트를 Transact-SQL 편집기에서 엽니다. 그런 다음, 검토할 코드를 강조 표시하고 편집기 도구 모음에서 예상 실행 계획 표시 단추를 클릭하여 예상 실행 계획을 표시하도록 선택할 수 있습니다. 예상 실행 계획 표시를 클릭할 경우 Transact-SQL 쿼리 또는 일괄 처리가 실행되지 않습니다. 대신, 스크립트가 구문 분석되고 쿼리가 실제로 실행될 때 데이터베이스 엔진에서 사용할 가능성이 가장 큰 쿼리 실행 계획이 표시됩니다.

스크립트가 구문 분석되거나 실행된 후에 실행 계획 출력의 그래픽 표현을 보려면 실행 계획 탭을 클릭합니다.

그래픽 실행 계획 출력은 오른쪽에서 왼쪽으로, 위에서 아래로 읽습니다. 분석되는 일괄 처리의 각 쿼리가 표시되며, 일괄 처리의 총 비용 중 각 쿼리 비용이 차지하는 백분율도 표시됩니다. 각 단계에 대한 비용 및 작업과 같은 추가 정보를 보려면 그래픽 계획의 논리 및 물리 연산자 아이콘 위에 마우스를 놓습니다.

실행 계획 표시 크기를 변경하려면 실행 계획을 마우스 오른쪽 단추로 클릭한 다음 실행 계획, 확대, 축소, 사용자 지정, 또는 크기에 맞게 확대/축소를 선택합니다. 확대축소를 사용하면 실행 계획을 고정된 크기로 확대하거나 축소할 수 있습니다. 사용자 지정 확대/축소를 사용하면 80%로 확대/축소와 같은 사용자 고유의 디스플레이 배율을 정의할 수 있습니다. 크기에 맞게 확대/축소는 결과 창에 맞게 실행 계획을 조정합니다.

실행 계획은 나중에 검사를 위해 저장하고 다시 열 수 있습니다. 이렇게 하려면 실행 계획을 마우스 오른쪽 단추로 클릭하고 실행 계획을 다른 이름으로 저장을 선택합니다. 그런 다음 Visual Studio에서 다른 종류의 파일을 열 때처럼 계획을 열 수 있습니다.

Code Analysis 사용

코드 분석을 사용하여 디자인, 명명 및 성능 문제와 같은 스크립트의 잠재적 문제를 찾을 수 있습니다. 데이터베이스 프로젝트에 대한 규칙은 특정 영역을 대상으로 하는 미리 정의된 규칙 집합으로 구성되어 있으며, 프로젝트 속성 페이지의 코드 분석 탭에서 규칙을 사용하거나 사용하지 않도록 설정할 수 있습니다. 동일한 탭에서 프로젝트가 빌드될 때마다 코드 분석이 자동으로 실행되도록 지정하거나, 경고를 오류로 처리할지 여부를 지정할 수 있습니다.

코드 분석을 수동으로 사용하려면 솔루션 탐색기에서 프로젝트를 마우스 오른쪽 단추로 클릭하고 코드 분석 실행을 선택합니다. 코드 분석 경고는 오류 목록 창에 표시됩니다. 경고를 두 번 클릭하여 문제가 포함된 원본 코드로 이동하고 오류 도움말 표시 상황에 맞는 메뉴를 사용하여 경고에 대한 추가 정보와 가능한 해결 방법을 볼 수 있습니다.

코드 분석에 대한 자세한 내용은 데이터베이스 코드를 분석하여 코드 품질 향상을 참조하세요.