[Spark Issue] Fetch Failed Exception 문제 분석하기

matteblack9·2022년 8월 10일
0

개발

목록 보기
4/6
post-custom-banner

Ajay Gupta의 글을 번역 및 발췌한 글입니다.

Fetch Failed Exception이란 Shuffle reduce task라고 불리며, 하나 혹은 그 이상의 셔플 블록들을 exceutor로 부터 읽는 것을 실패한 동작을 말한다.

Fetch Failed Exception의 주요 원인으로 필자는 다음과 같은 이유가 대표적으로 있음을 발견했다. (물론 원인은 Shuffle 동작 오류에서는 매우 다양하다)

  • Executor의 Out of Heap 메모리
  • Executor의 메모리 리소스 부족
  • Shffuel block이 2GB보다 큰 경우
  • Network Timeout이 발생했을 때

필자는 FetchFailed Exception을 만났을 때, 원인은 결국 어떤 것이였나 개발자들에게 설문한 결과 다음과 같은 결과가 나왔다.

  • Executor의 Out of Heap 메모리
    셔플 block이 java의 Out of Memory 에러때문에 손상되는 현상이다. executor의 heap 공간의 부족 떄문에 발생할수도 있고ㅡ
post-custom-banner

0개의 댓글