DAX Studio의 쿼리 계획 및 서버 타이밍

이 자습서에서는 DAX Studio의 쿼리 계획 및 서버 타이밍 에 대해 알아봅니다 . 이것은 DAX 쿼리를 실행할 때마다 백그라운드에서 발생하는 일에 대한 개요입니다 .

홈 탭 아래의 추적 창에서 쿼리 계획 및 서버 타이밍 옵션을 찾을 수 있습니다.

DAX Studio의 쿼리 계획 및 서버 타이밍

목차

DAX Studio의 쿼리 계획

쿼리 계획 옵션을 클릭하면 LuckyTemplates 또는 SQL Server Analysis Services 에서 데이터 모델에 대한 연결이 생성됩니다 .

쿼리 계획은 작업의 논리적 및 물리적 흐름을 정의하는 수식 엔진에서 생성되는 문입니다.

출력 창에 쿼리 추적이 시작되었음을 표시하는 것을 볼 수 있습니다.

DAX Studio의 쿼리 계획 및 서버 타이밍

여기서부터 테이블 형식 모델 에서 실행하는 모든 코드는 수식 엔진에서 빌드한 쿼리 계획에 의해 추적됩니다.

물리적 및 논리적 쿼리 계획

쿼리 계획 옵션을 클릭하면 출력 창에 새 창이 열립니다. 쿼리 계획 창은 물리적 쿼리 계획논리적 쿼리 계획의 두 하위 창으로 나뉩니다 .

DAX Studio의 쿼리 계획 및 서버 타이밍

예를 들어 Products 테이블을 평가할 DAX 코드를 작성해 보겠습니다 . 이 코드를 실행하면 물리적 쿼리 계획과 논리적 쿼리 계획 모두에서 일부 라인 항목을 볼 수 있습니다.

DAX Studio의 쿼리 계획 및 서버 타이밍

DAX 코드를 작성한 후 DAX 파서는 코드의 유효성을 확인하고 실수가 없는지 확인합니다. 그런 다음 수식 엔진은 논리적 쿼리 계획을 준비합니다. 또한 스토리지 엔진에서 데이터를 수신합니다.

그런 다음 스토리지 엔진에서 데이터 캐시를 검색합니다. 그런 다음 이 엔진은 물리적 쿼리 계획을 준비하고 실행합니다. 실행 프로세스가 완료되면 결과를 얻을 수 있습니다.

DAX Studio의 서버 타이밍

서버 타이밍 옵션을 클릭하면 출력 창에 새 창이 나타납니다. 여기에는 CPU에 관한 정보가 포함되어 있습니다.

수식 엔진(FE) 및 스토리지 엔진(SE) 에 대한 데이터도 볼 수 있습니다 .

DAX Studio의 쿼리 계획 및 서버 타이밍

동일한 DAX 코드를 실행하면 서버 타이밍 창에 새 정보가 표시됩니다.

DAX Studio의 쿼리 계획 및 서버 타이밍

총계 쿼리를 실행하는 데 걸리는 총 시간을 나타냅니다. CPU에 여러 개의 코어가 있는 경우 여러 세그먼트를 동시에 스캔할 수 있습니다. 이것이 SE CPU가 나타내는 것입니다.

FE 및 SE는 각 엔진이 데이터를 검색하고 결과를 DAX Studio로 다시 반환 하는 데 걸린 시간을 보여줍니다.

SE 쿼리는 VertiPaq 또는 DirectQuery 스토리지 엔진에 대해 실행된 쿼리 수를 보여줍니다. 마지막으로 SE Cache는 스토리지 엔진 데이터 캐시에 얼마나 많은 코드가 보관되어 있는지 보여줍니다.

테이블에는 실행한 쿼리에 대한 추가 정보도 표시됩니다.

DAX Studio의 쿼리 계획 및 서버 타이밍

각 열은 다음을 나타냅니다.

  • 줄은 쿼리의 줄 번호를 보여줍니다.
  • 하위 클래스는 사용된 연산자를 보여줍니다.
  • 기간은 스토리지 엔진이 쿼리를 실행하는 데 걸린 시간을 보여줍니다.
  • 행은 생성된 테이블의 행 수를 나타냅니다.
  • KB는 테이블에서 사용하는 RAM의 양을 보여줍니다.

프로세스 분석

Server Timings 창의 테이블에서 행을 클릭하면 쿼리의 의사 언어를 볼 수 있습니다.

DAX Studio의 쿼리 계획 및 서버 타이밍

이 예에서 스토리지 엔진은 2,500개 행의 데이터 캐시를 수식 엔진으로 다시 반환합니다. 그런 다음 수식 엔진이 물리적 쿼리 계획을 준비합니다. 물리적 쿼리 계획이 실행되면 DAX Studio에서 테이블 형식으로 결과를 얻을 수 있습니다.

프로세스 및 결과 테이블 변경은 DAX 코드에 적용하는 시나리오에 따라 다릅니다. 다른 함수를 사용하거나 새 계산 테이블을 만들 수 있습니다. 이는 DAX Studio의 엔진 처리 속도에 영향을 미칩니다.


LuckyTemplates에서 숨겨진 날짜 테이블을 제거하여
LuckyTemplates의 DAX 쿼리 성능 향상 – 논리적 및 물리적 쿼리 계획
LuckyTemplates DAX Studio에서 쿼리 설정 구성

결론

쿼리 계획은 쿼리를 실행하기 위해 데이터베이스가 따르는 지침 목록을 보여줍니다. 반면에 Server Timings는 수식 엔진, 스토리지 엔진 및 데이터 모델에 대한 특정 메트릭을 보여줍니다.

이러한 옵션을 사용하는 방법을 학습하면 DAX 코드를 실행할 때마다 배후에서 발생하는 상황을 더 잘 이해할 수 있습니다.

Leave a Comment

SharePoint의 계산된 열 | 개요

SharePoint의 계산된 열 | 개요

SharePoint에서 계산된 열의 중요성과 목록에서 자동 계산 및 데이터 수집을 수행하는 방법을 알아보세요.

Power Apps에서 변수 만들기: 컬렉션 작업

Power Apps에서 변수 만들기: 컬렉션 작업

컬렉션 변수를 사용하여 Power Apps에서 변수 만드는 방법 및 유용한 팁에 대해 알아보세요.

Microsoft Flow HTTP 트리거 | Power Automate 자습서

Microsoft Flow HTTP 트리거 | Power Automate 자습서

Microsoft Flow HTTP 트리거가 수행할 수 있는 작업과 Microsoft Power Automate의 예를 사용하여 이를 사용하는 방법을 알아보고 이해하십시오!

Power Automate 흐름: 사용법 및 유형 설명

Power Automate 흐름: 사용법 및 유형 설명

Power Automate 흐름 및 용도에 대해 자세히 알아보세요. 다양한 작업 및 시나리오에 사용할 수 있는 다양한 유형의 흐름에 대해 설명합니다.

흐름에서 Power Automate 종료 작업 제어

흐름에서 Power Automate 종료 작업 제어

조건이 충족되지 않는 경우 흐름에서 작업을 종료하는 Power Automate 종료 작업 컨트롤을 올바르게 사용하는 방법을 알아봅니다.

PowerApps 시작 기능: 앱에서 다른 서비스를 시작하는 방법

PowerApps 시작 기능: 앱에서 다른 서비스를 시작하는 방법

PowerApps 실행 기능에 대해 자세히 알아보고 자신의 앱에서 바로 웹사이트, 전화, 이메일 및 기타 앱과 같은 기타 서비스를 실행하십시오.

Power Automate의 HTTP 요청 – 소개

Power Automate의 HTTP 요청 – 소개

타사 애플리케이션 통합과 관련하여 Power Automate의 HTTP 요청이 작동하는 방식을 배우고 이해합니다.

Power Automate Desktop: 마우스 클릭 보내기 기능을 사용하는 방법

Power Automate Desktop: 마우스 클릭 보내기 기능을 사용하는 방법

Power Automate Desktop에서 Send Mouse Click을 사용하는 방법을 알아보고 이것이 어떤 이점을 제공하고 흐름 성능을 개선하는지 알아보십시오.

PowerApps 변수: 컨텍스트 및 전역 변수 식별

PowerApps 변수: 컨텍스트 및 전역 변수 식별

PowerApps 변수의 작동 방식, 다양한 종류, 각 변수가 앱에 기여할 수 있는 사항을 알아보세요.

Power Automate에서 실행할 데스크톱 흐름 예약

Power Automate에서 실행할 데스크톱 흐름 예약

이 자습서에서는 Power Automate를 사용하여 웹 또는 데스크톱에서 작업을 자동화하는 방법을 알려줍니다. 데스크톱 흐름 예약에 대한 포괄적인 가이드를 제공합니다.