다음을 통해 공유


쿼리에 대한 검사 통계 사용

중요하다

AKS의 Azure HDInsight는 2025년 1월 31일에 사용 중지되었습니다. 에 대해 더 알아보려면 이 공지을 확인하세요.

워크로드가 갑자기 종료되는 것을 방지하기 위해 워크로드를 Microsoft Fabric 또는 동등한 Azure 제품으로 워크로드를 마이그레이션해야 합니다.

중요하다

이 기능은 현재 미리 보기로 제공됩니다. Microsoft Azure 미리 보기의 추가 사용 약관에는 베타 상태 또는 미리 보기 상태의, 일반 공급으로 아직 릴리스되지 않은 Azure 기능에 적용되는 더 많은 법적 조건이 포함됩니다. 이 특정 미리 보기에 대한 정보는 Azure HDInsight on AKS 미리 보기 정보을 참조하세요. 질문 또는 기능 제안에 대한 자세한 내용은 AskHDInsight 대한 요청을 제출하고 Azure HDInsight Community 대한 자세한 업데이트를.

데이터 팀은 종종 성능을 조사하거나 쿼리를 최적화하여 리소스 사용률을 개선하거나 비즈니스 요구 사항을 충족해야 합니다.

AKS의 HDInsight용 Trino에 사용자가 커넥터에 대한 스캔 통계를 캡처할 수 있는 새로운 기능이 추가되었습니다. 이 기능은 Trino에서 생성한 통계에서 사용할 수 있는 것 이상으로 쿼리 성능 프로필에 대한 심층적인 인사이트를 제공합니다.

이 기능은 세션 속성collect_raw_scan_statistics사용하고 Trino 명령에 따라 사용하도록 설정할 수 있습니다.

SET SESSION collect_raw_scan_statistics=true

사용하도록 설정되면 TableScanOperator, ScanFilterAndProject 등과 같은 쿼리의 원본 연산자는 데이터 검색에 대한 통계를 가지며, 세분성은 파이프라인의 연산자 인스턴스당입니다.

검사 통계는 클러스터 또는 쿼리가 CPU 제한되지 않을 때 병목 상태를 식별하는 데 유용하며 쿼리의 읽기 성능에 대한 조사가 필요합니다. 또한 분할 수준 관점에서 쿼리의 실행 프로필을 이해하는 데 도움이 됩니다.

메모

현재 작업자당 캡처된 분할 수는 생성된 데이터의 크기 제약 조건으로 인해 1000개로 제한됩니다. 쿼리에 대한 작업자당 분할 수가 이 제한을 초과하면 가장 오래 실행되는 상위 1000개의 분할이 반환됩니다.

검사 통계에 액세스하는 방법

세션 속성이 설정되면 세션의 후속 쿼리는 사용할 수 있을 때마다 원본 연산자에서 통계를 캡처하기 시작합니다. 사용자가 쿼리에 대해 생성된 검사 통계를 사용하고 분석할 수 있는 여러 가지 방법이 있습니다.

쿼리 JSON

쿼리 세부 정보 페이지의 Json 탭은 쿼리의 모든 단계, 파이프라인에 대한 통계를 포함하는 쿼리의 JSON 표현을 제공합니다. 세션 속성이 설정되면 json에는 queryStats.operatorSummaries[*]scanStats이라는 새 필드가 포함됩니다. 배열에는 연산자 인스턴스당 하나의 개체가 포함됩니다.

다음 예제는 hive connector 및 스캔 통계를 사용한 쿼리의 json 예시를 보여줍니다.

메모

검사 통계 요약에는 커넥터에 의해 채워진 splitInfo가 포함됩니다. 이를 통해 사용자는 사용자 지정 커넥터에 포함할 저장소에 대한 정보를 제어할 수 있습니다.

쿼리 성능 요약을 보여 주는 스크린샷

스캔 통계 UI

이 기능으로 생성된 통계를 시각화하고 각 작업자의 분할된 조직 성능에 대한 인사이트를 제공하는 쿼리 세부 정보 페이지에서 Scan Stats이라는 새 탭을 찾을 수 있습니다. 이 페이지에서는 사용자가 시간 및 처리량에 따른 동시 읽기와 같은 정보를 사용하여 쿼리에 대한 trino의 실행 프로필을 볼 수 있습니다.

검사 상태 추가를 보여 주는 스크린샷

다음 예제에서는 검사 통계가 활성화된 쿼리에 대한 페이지를 보여 줍니다.

검사 상태 탭을 보여 주는 스크린샷입니다.

Microsoft 쿼리 로거 사용**

Microsoft 쿼리 로거 이 기능을 기본적으로 지원합니다. 이 기능을 사용하도록 설정하면 쿼리 로거 플러그 인은 쿼리 이벤트 테이블과 함께 operatorstats 테이블을 채웁니다. 이 테이블은 모든 연산자 인스턴스가 각 쿼리에 대해 하나의 행이 되도록 비정규화됩니다.