391
26
장
성능 튜닝
26.4
배치 간격 조정하기
자주 언급되는 전략은 배치 간격을 늘리는 것이다. 이 접근 방식은 일부 병렬성과 리소스 사용 문
제를 개선하는 데 도움이 될 수 있다. 예를 들어 배치 간격을
1
분에서
5
분으로 늘리면
1
분에 한
번이 아니라
5
분에 한 번씩만 잡의 구성 요소인 태스크만 직렬화하면 된다. 즉,
5
배 단축된다.
그럼에도 불구하고 스트림의 배치는 하나가 아닌 회선을 통해 보이는
5
분 분량의 데이터를 나
타내며, 대부분의 불안정성 문제는 스트림의 처리량에 대한 리소스의 부적절한 분배로 인해 발
생한다. 간격이 이 불균형으로 거의 변하지 않을 수 있다. 우리가 구현하고자 하는 배치 간격은
분석에서 의미적 가치가 높은 경우가 많다.
21
장에서 보았듯이 집계 스트림에서 만들 수 있는
윈도우와 슬라이딩 간격을 제한하기 때문이다. 처리 제약 조건을 수용하기 위해 이러한 분석적
의미론을 변경하는 것은 최후의 수단으로만 구상해야 한다.
보다 강력한 전략은 빠른 직렬화 라이브러리를 사용하거나 성능 특성이 더 우수한 알고리즘을
구현하는 등 일반적인 비효율성을 줄이는 것으로 구성된다. 또한 분산 파일시스템을 확장하거나
알루시오와 같은 메모리 내 캐시로 교체하여 디스크 쓰기 속도를 가속화할 수 있다. 충분하지 않
은 경우 클러스터에 더 많은 리소스를 추가하여 블록 간격 튜닝과 같이 사용하는 파티션 수를 늘
려 더 많은 익스큐터에 스트림을 분배할 수 있도록 고려해야 한다.
26.5
고정 속도 스로틀링을 통한 데이터 수신 제한
만약 더 ...