109
6
장
스파크의 복원력 모델
배포 모드는 다음 두 가지 옵션 중 하나다. 클라이언트 모드에서는 드라이버가 애플리케이션을
제출하는 클라이언트와 동일한 프로세스에서 시작된다. 그러나 클러스터 모드에서는 드라이버
가 클러스터 내부의 작업자 프로세스 중 하나에서 시작되고 클라이언트 프로세스는 애플리케이
션이 완료될 때까지 기다리지 않고 애플리케이션을 제출해야 할 책임이 있는 즉시 종료된다.
요약하면 스파크가 자동 드라이버 재시작을 수행할 수 있게 하여 사용자가 ‘
fire
and
forget
발
사
후
망각
방식’으로 잡을 시작하고, 다음 기차를 타기 위해 잡을 시작한 다음 랩톱을 닫는다. 스파
크의 모든 클러스터 모드는 사용자가 애플리케이션의 로그에 액세스할 수 있는 웹
UI
를 제공한
다. 다른 장점은 드라이버 프로세스가 클러스터 매니저에 의해 다시 시작되기 때문에 드라이버
실패가 작업의 끝을 표시하지 않는다는 것이다. 그러나 이전의 드라이버 시스템에 저장된 연산
의 임시적인 상태가 손실될 수 있기 때문에 처음부터 복구할 수 있을 뿐이다.
체크포인팅
드라이버 손상 시 중간 상태가 손실되지 않도록 스파크는 체크포인팅 옵션을 제공한다. 즉, 애
플리케이션 상태의 스냅샷을 디스크에 주기적으로 기록한다.
sparkContext
.
setCheckpointD
irectory
( )
옵션의 설정은 드라이버가 로컬 파일시스템에서 중간
RDD
상태를 재구성하려고
시도하기 때문에 신뢰할 수 있는 스토리지 (예: 하둡 분산 파일 시스템)를 가리켜야 한다. 클러
스터의 ...