EMR에서 하둡, 하이브 작업시 S3에 동시에 많은 요청이 들어가면 503 Slow Down 오류가 발생합니다. S3의 스펙상으로 동시에 5500개 이상의 요청이 들어가면 오류가 발생합니다.
AmazonS3Exception: Internal Error (Service: Amazon S3; Status Code: 500; Error Code: 500 Internal Error; Request ID: A4DBBEXAMPLE2C4D)
AmazonS3Exception: Slow Down (Service: Amazon S3; Status Code: 503; Error Code: 503 Slow Down; Request ID: A4DBBEXAMPLE2C4D)
https://aws.amazon.com/ko/premiumsupport/knowledge-center/emr-s3-503-slow-down/
해결방법
- 동시에 처리되는 매퍼의 개수를 줄입니다.
- 하이브 작업에서는 tez.grouping.max-size, tez.grouping.min-size를 조절하여 동시 작업 개수를 조정할 수 있습니다.
- 재작업 회수를 조절합니다.
- fs.s3.maxRetries 설정을 늘려서 오류 발생시 재작업을 처리하도록 합니다.
- 하이브 작업에서는 blob 설정을 추가합니다.
- hive.blobstore.optimizations.enabled를 false로 설정
- 이 설정을 이용하면 하이브 작업에서 발생하는 임시 파일을 hdfs에 쓰게 됩니다. 그리고 최종 작업 파일을 HDFS로 전송하여 중간에 발생하는 임시 파일을 줄여서 S3의 요청빈도를 줄이는 효과가 발생합니다.
반응형
'AWS > EMR' 카테고리의 다른 글
[EMR] EMR 하둡 클러스터의 기본 포트 및 사용법 (0) | 2020.03.05 |
---|---|
[EMR] AWS EMR의 클러스터 정보확인 위치 (0) | 2020.01.13 |
[EMR] CORE 노드 레이블에 맞는 클러스터 활용 설정 (0) | 2019.11.19 |
[EMR] AWS EMR의 hive cli에서 tez.queue.name가 설정되지 않는 문제 해결 방법 (0) | 2019.11.04 |
[EMR] AWS EMR의 버전 선택 (0) | 2019.11.01 |