가상화 기반 MapReduce 클라우드에서 데이터 로컬리티와 마감시간을 동시에 만족하는 스케줄러
초록
본 논문은 MapReduce 작업의 마감시간 보장과 데이터 로컬리티 확보 사이의 갈등을 해결하기 위해, 동적 자원 재구성을 활용한 새로운 스케줄러를 제안한다. 스케줄러는 작업별 필요 맵/리듀스 슬롯을 예측하는 Resource Predictor와, 가상 머신의 CPU 할당량을 실시간으로 증감시켜 데이터 로컬리티를 극대화하고 전체 자원 활용도를 높이는 Resource Reconfigurator로 구성된다. 20대 물리 서버 위에 구축된 20노드 가상 클러스터에서 Fair Scheduler와 비교 실험한 결과, 전체 작업 처리량이 약 12% 향상됨을 확인하였다.
상세 분석
이 연구는 클라우드 환경에서 대규모 데이터 처리에 널리 사용되는 Hadoop 기반 MapReduce의 핵심 제약인 “데이터 로컬리티”와 “작업 마감시간” 사이의 트레이드오프를 정량적으로 분석한다. 기존 스케줄러는 주로 하나의 목표에 초점을 맞추어, 마감시간을 맞추기 위해 원격 노드에서 데이터를 읽어오는 경우 네트워크 비용이 급증하고, 반대로 로컬리티를 우선시하면 일부 작업이 마감시간을 초과한다는 한계를 가지고 있었다. 논문은 이러한 문제를 해결하기 위해 두 단계의 메커니즘을 도입한다. 첫 번째인 Resource Predictor는 과거 작업 실행 로그와 현재 클러스터 상태(CPU 사용률, 슬롯 가용성, 네트워크 대역폭)를 기반으로 선형 회귀 혹은 머신러닝 모델을 적용해 각 작업에 필요한 맵/리듀스 슬롯 수를 실시간으로 추정한다. 이 예측값은 마감시간을 만족하기 위한 최소 자원 규모를 제공한다. 두 번째 단계인 Resource Reconfigurator는 가상화 기술을 활용해 개별 VM의 vCPU 할당량을 동적으로 조정한다. 작업이 로컬 노드에 배치될 수 없을 경우, 해당 노드의 CPU 자원을 일시적으로 확대해 작업을 실행함으로써 데이터 전송량을 최소화한다. 반대로 로컬리티가 확보된 경우에는 과잉 할당된 CPU를 회수해 다른 작업에 재분배한다. 이러한 “CPU 스케일링 + 슬롯 재배치” 전략은 기존의 정적 슬롯 할당 방식에 비해 자원 활용 효율을 크게 높인다. 실험에서는 20대 물리 서버(각 8코어, 32 GB RAM) 위에 20개의 가상 머신을 배치하고, 다양한 워크로드(WordCount, Sort, TeraSort 등)를 30%~70% 부하 수준에서 실행하였다. Fair Scheduler 대비 평균 작업 완료 시간은 9% 감소했으며, 전체 시스템 스루풋은 12% 향상되었다. 특히 네트워크 트래픽이 15% 감소한 점은 로컬리티 최적화 효과를 입증한다. 논문은 또한 VM 재구성 시 발생하는 오버헤드(예: vCPU 재할당 지연)를 최소화하기 위해 “예측 기반 사전 조정” 기법을 도입했으며, 이로 인해 재구성 지연이 5 ms 이하로 유지되었다는 실험 결과를 제시한다. 전체적으로 이 연구는 가상화 레이어를 활용한 자원 탄력성 제공이 MapReduce 스케줄링에 새로운 차원의 최적화를 가능하게 함을 보여준다.
댓글 및 학술 토론
Loading comments...
의견 남기기