EMRFS S3 최적 커미터 및 멀티파트 업로드 - Amazon EMR

EMRFS S3 최적 커미터 및 멀티파트 업로드

EMRFS S3 최적화 커미터를 사용하려면 Amazon EMR에서 멀티파트 업로드를 활성화해야 합니다. 멀티파트 업로드는 기본적으로 사용하도록 설정되어 있습니다. 필요한 경우 다시 활성화할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서Amazon S3에 대한 멀티파트 업로드 구성을 참조하세요.

EMRFS S3 최적화 커미터는 멀티파트 업로드의 트랜잭션과 유사한 특성을 사용하여 작업을 시도할 때 작성된 파일이 작업 커밋 시 작업 출력 위치에만 나타나는지 확인합니다. 이 방법으로 멀티파트 업로드를 사용하면 커미터는 기본 FileOutputCommitter 알고리즘 버전 2보다 작업 커밋 성능을 향상시킵니다. EMRFS S3 최적화 커미터를 사용할 경우, 일반적인 멀티파트 업로드 동작과의 몇 가지 주요한 차이점을 고려해야 합니다.

  • 멀티파트 업로드는 파일 크기에 관계없이 항상 수행됩니다. 이는 fs.s3n.multipart.uploads.split.size 속성이 멀티파트 업로드가 트리거되는 파일 크기를 제어하는 EMRFS의 기본 동작과 다릅니다.

  • 멀티파트 업로드는 작업이 커밋되거나 중단될 때까지 더 오랜 기간 동안 불완전한 상태로 유지됩니다. 이는 지정된 파일 작성을 마칠 때 멀티파트 업로드가 완료되는 EMRFS의 기본 동작과 다릅니다.

이러한 차이로 인해 Spark Executor JVM이 충돌하거나 작업이 실행 중이고 Amazon S3에 데이터를 쓰는 경우 불완전한 멀티파트 업로드가 남아 있게 됩니다. 이러한 이유로 EMRFS S3 최적화 커미터를 사용할 때는 실패한 멀티파트 업로드를 관리하는 모범 사례를 따르십시오. 자세한 내용은 Amazon EMR 관리 안내서에서 Amazon S3 버킷 사용에 대한 모범 사례를 참조하세요.