YARN 스케줄러 성능 비교와 최적 선택

YARN 스케줄러 성능 비교와 최적 선택
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

본 논문은 YARN의 두 주요 스케줄러인 Capacity Scheduler와 Fair Scheduler를 조합한 네 가지 스케줄링 정책을 다양한 애플리케이션 유형과 큐 구조에서 실험적으로 평가한다. 실험 결과는 혼합 워크로드 환경에서 각 정책과 큐 설계가 자원 활용도와 작업 완료 시간에 미치는 영향을 명확히 제시하며, 운영자가 상황에 맞는 최적의 정책과 큐 구성을 선택하도록 돕는다.

상세 분석

YARN은 기존 Hadoop의 단일 자원 관리 모델을 탈피해 ResourceManager와 ApplicationMaster로 기능을 분리함으로써 다양한 애플리케이션이 동시에 실행될 수 있는 기반을 제공한다. 이 구조적 변화는 스케줄러의 역할을 더욱 중요하게 만들었으며, 현재 Hadoop 커뮤니티에서는 Capacity Scheduler와 Fair Scheduler 두 가지가 주류를 이룬다. Capacity Scheduler는 사전에 정의된 용량 비율에 따라 큐에 자원을 할당해 서비스 수준 계약(SLA)을 보장하려는 목적이 강하고, Fair Scheduler는 모든 사용자와 애플리케이션이 공정하게 자원을 나누도록 설계되어 있다.

논문은 이 두 스케줄러를 각각 기본 정책과 “preemption(선점) 활성화” 정책으로 조합해 총 네 가지 Scheduling‑Policy Combination(SPC)을 만든다. SPC‑1은 Capacity 기본, SPC‑2는 Capacity + Preempt, SPC‑3은 Fair 기본, SPC‑4는 Fair + Preempt이다. 여기서 선점은 오래 실행 중인 작업이 과도한 자원을 점유할 경우, 다른 대기 작업에게 자원을 재분배하도록 강제한다.

실험 설계는 네 가지 애플리케이션 유형(대용량 배치, 인터랙티브, 스트리밍, 머신러닝)과 세 가지 큐 구조(단일 큐, 다중 계층 큐, 동적 가중치 큐)를 조합해 12개의 시나리오를 만든 뒤, 각 시나리오에서 작업 완료 시간( makespan ), 평균 대기 시간, 클러스터 전체 자원 이용률 등을 측정하였다. 특히, 혼합 워크로드에서 발생하는 “자원 경쟁”과 “우선순위 충돌”을 정량화하기 위해 CPU와 메모리 사용량을 상세 로그로 수집하고, 통계적 유의성을 검증하기 위해 30회 반복 실험을 수행했다.

결과 분석에서 눈에 띈 점은 다음과 같다. 첫째, Preempt 기능이 활성화된 경우 전체 자원 이용률은 512% 상승했지만, 선점으로 인한 작업 재시작 오버헤드가 특히 대용량 배치 작업에서 평균 실행 시간을 815% 증가시켰다. 둘째, Capacity 기반 SPC는 사전에 정의된 용량 비율을 유지하면서도 대기 시간이 짧아, SLA가 중요한 기업 환경에 적합했다. 반면, Fair 기반 SPC는 특히 인터랙티브와 스트리밍 작업에서 응답성이 크게 개선돼, 사용자 경험이 중요한 서비스에 유리했다. 셋째, 큐 구조에 따라 차이가 크게 나타났다. 다중 계층 큐는 각 계층에 맞는 정책을 적용할 수 있어, 예를 들어 상위 계층에 Capacity + Preempt, 하위 계층에 Fair + Preempt를 혼용하면 전체 시스템 효율을 18%까지 끌어올렸다. 동적 가중치 큐는 워크로드 변화에 실시간으로 가중치를 재조정함으로써, 급격한 부하 변동 시에도 자원 할당의 균형을 유지했다.

또한, 논문은 실험 결과를 기반으로 “스케줄러 선택 가이드라인”을 제시한다. 즉, (1) 작업 유형이 배치 중심이고 SLA가 명확할 경우 Capacity + Preempt와 고정 용량 큐를, (2) 인터랙티브·스트리밍 비중이 높고 응답성이 핵심일 경우 Fair + Preempt와 동적 가중치 큐를, (3) 혼합 워크로드에서 균형을 추구한다면 다중 계층 큐에 각각 적합한 SPC를 배치하는 것이 최적이라는 것이다. 이러한 가이드라인은 실제 YARN 운영자가 클러스터 규모와 비즈니스 요구에 맞춰 스케줄러와 큐 구조를 조정하는 데 실용적인 로드맵을 제공한다.

전반적으로 이 연구는 YARN 스케줄러 선택이 단순히 “Capacity vs Fair”의 이분법이 아니라, 선점 정책, 큐 설계, 워크로드 특성 등 복합적인 요소들의 상호작용에 의해 결정된다는 점을 명확히 보여준다. 이는 향후 YARN 기반 클라우드 서비스가 자동화된 스케줄러 튜닝 메커니즘을 도입하거나, 새로운 스케줄링 알고리즘을 설계할 때 중요한 설계 기준이 될 것이다.


댓글 및 학술 토론

Loading comments...

의견 남기기