기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Spark UI를 사용하여 성능 문제 조사
모범 사례를 적용하여 AWS Glue 작업의 성능을 조정하기 전에 성능을 프로파일링하고 병목 현상을 식별하는 것이 좋습니다. 이렇게 하면 올바른 업무에 집중할 수 있습니다.
빠른 분석을 위해 Amazon CloudWatch 지표는 작업 지표의 기본 보기를 제공합니다. Spark UI는 성능 조정을 위한 심층 보기를 제공합니다. 에서 Spark UI를 사용하려면 AWS Glue 작업에 대해 Spark UI를 활성화 AWS Glue해야 합니다. Spark UI에 익숙해지면 Spark 작업 성능을 조정하는 전략에 따라 조사 결과를 기반으로 병목 현상의 영향을 식별하고 줄입니다.
Spark UI를 사용하여 병목 현상 식별
Spark UI를 열면 Spark 애플리케이션이 테이블에 나열됩니다. 기본적으로 AWS Glue 작업의 앱 이름은 nativespark-<Job
Name>-<Job Run ID>입니다. 작업 실행 ID를 기반으로 대상 Spark 앱을 선택하여 작업 탭을 엽니다. 스트리밍 작업 실행과 같은 불완전한 작업 실행은 불완전한 애플리케이션 표시에 나열됩니다.
작업 탭에는 Spark 애플리케이션의 모든 작업에 대한 요약이 표시됩니다. 단계 또는 태스크 실패를 확인하려면 총 작업 수를 확인합니다. 병목 현상을 찾으려면 기간을 선택하여 정렬합니다. 설명 열에 표시된 링크를 선택하여 장기 실행 작업의 세부 정보를 자세히 살펴봅니다.
작업 세부 정보 페이지에는 단계가 나열됩니다. 이 페이지에서는 지속 시간, 성공한 태스크 수 및 총 태스크 수, 입력 및 출력 수, 셔플 읽기 및 셔플 쓰기 양과 같은 전체 인사이트를 볼 수 있습니다.
실행기 탭에는 Spark 클러스터 용량이 자세히 표시됩니다. 총 코어 수를 확인할 수 있습니다. 다음 스크린샷에 표시된 클러스터에는 총 316개의 활성 코어와 512개의 코어가 포함되어 있습니다. 기본적으로 각 코어는 한 번에 하나의 Spark 태스크를 처리할 수 있습니다.
작업 세부 정보 페이지에 표시된 5/5 값에 따라 5단계가 가장 긴 단계이지만 512개 중 5개의 코어만 사용합니다. 이 단계의 병렬화는 너무 낮지만 시간이 많이 걸리기 때문에 병목 현상으로 식별할 수 있습니다. 성능을 개선하기 위해 이유를 파악하길 원합니다. 일반적인 성능 병목 현상의 영향을 인식하고 줄이는 방법에 대해 자세히 알아보려면 Spark 작업 성능 조정을 위한 전략을 참조하세요.