AWS re:Post을(를) 사용하면 다음에 동의하게 됩니다. AWS re:Post 이용 약관

Amazon EMR Serverless 작업이 시작되지 않거나, 느리게 실행되거나, PENDING 상태에서 멈추는 문제를 해결하려면 어떻게 해야 합니까?

2분 분량
0

Amazon EMR Serverless 작업이 시작되지 않거나, 느리게 실행되거나, PENDING 상태에서 멈추는 문제를 해결하고 싶습니다.

간략한 설명

시스템이 유휴 상태이거나 낮은 수준에서 확장되어 리소스를 프로비저닝하는 데 시간이 걸리는 경우 콜드 스타트가 발생합니다.

작업을 제출했는데 initialCapacity의 작업자를 사용할 수 있는 경우 작업은 initialCapacity 리소스를 사용하여 실행됩니다. 다른 작업에서 initialCapacity 리소스를 사용하는 경우 Amazon EMR Serverless 애플리케이션은 최대 할당량까지 추가 작업자를 요청합니다.

해결 방법

Amazon EMR Serverless 작업이 시작되지 않거나, 느리게 실행되거나, PENDING 상태에서 멈추는 문제를 해결하려면 다음 조치를 취하십시오.

  • 드라이버와 작업자가 신속하게 대응하고 애플리케이션을 즉시 시작할 수 있도록 하려면 사전 초기화된 용량을 사용합니다.
  • Hive와 Spark에 적절한 initialCapacity를 설정합니다.
  • 드라이버와 실행기의 크기를 다르게 구성합니다.
  • 작업을 스케일 업하려면 CPU, 메모리 및 디스크의 최대 용량을 지정합니다.
  • 유휴 리소스를 피하려면 컨테이너 크기를 사전 초기화된 용량 작업자 크기에 맞게 조정합니다. 예를 들어 Spark 실행 크기가 사전 초기화된 용량 작업자 크기와 동일해야 합니다.
  • 애플리케이션 성능을 확인하고 병목 현상의 가능성을 파악하려면 Spark UI 또는 Hive Tez UI의 각 단계에 대한 단계 및 기간을 검토하십시오. 자세한 내용은 작업자 수준 모니터링Spark 문제 해결 및 성능 조정을 참조하십시오.
  • Spark 모범 사례Hive 모범 사례를 따르십시오. Amazon EMR 릴리스 7.1.0 이상에서는 Apache Spark 또는 Hive 작업을 실행할 때 셔플에 최적화된 디스크를 사용하여 I/O 집약적 워크로드의 성능을 개선하십시오.
  • 작업 실패 문제를 해결하려면 Amazon EMR Serverless가 애플리케이션 로그를 저장하고 관리하는 방법을 선택하십시오.
  • 자동 정지 구성 기능을 수정하거나 비활성화합니다. 기본값은 15분으로 설정되어 있습니다.
  • 작업에 즉시 높은 동시성이 필요할 때 병목 현상이 발생하지 않도록 하려면 1로 설정된 spark.executor.instances를 사용하지 마십시오.
  • 작업 성능을 높이려면 spark.dynamicAllocation.enabledtrue인 경우 spark.dynamicAllocation.minExecutors를 늘리십시오. 또한 spark.dynamicAllocation.enabledfalse인 경우 spark.executor.instances 값을 늘리십시오.
AWS 공식
AWS 공식업데이트됨 2달 전