
355
24
장
체크포인팅
체크포인팅 작업은 정보를 손실하지 않으면서 해당 시점까지 보이는 모든 데이터의 재처리를 요
구하지 않고 상태 기반 스트리밍 애플리케이션을 다시 시작하는 데 필요한 정보를 정기적으로
저장하는 것으로 구성된다.
체크포인팅
Checkpointing
은 상태 기반 스파크 스트리밍 애플리케이션을 다룰 때 특히 주의를 기
울여야 할 주제다. 체크포인팅 없이 상태 기반 스트리밍 애플리케이션을 재시작하려면 애플리케
이션이 이전에 중지된 지점까지의 상태를 재구성해야 한다. 윈도우 작업의 경우 그러한 재구성
프로세스는 잠재적으로 몇 시간의 데이터로 구성될 수 있으며, 이는 더 큰 중간 스토리지를 필요
로 할 것이다. 더 어려운 경우는
22
장에서 보았던 것처럼 임의의 상태적 집계를 시행하고 있을
때다. 체크포인트가 없다면 웹사이트의 각 페이지에 대한 방문자 수를 세는 것과 같은 단순한 상
태 기반 애플리케이션이더라도 그 상태를 일관된 수준으로 재구축하기 위해 보이는 모든 데이터
를 재처리해야 할 것이다. 시스템에서 더 이상 필요한 데이터를 사용할 수 없기 때문에 매우 어
려운 것부터 불가능한 것까지 다양한 문제가 발생할 수 있다.
그러나 체크포인트는 무료가 아니다. 체크포인트 연산은 체크포인트 데이터를 유지하는 데 필요
한 저장 장치와 이 반복 연산이 애플리케이션의 ...