[논문 리뷰] Task-Cloning Algorithms in a MapReduce Cluster with Competitive Performance Bounds
이 논문은 MapReduce 클러스터를 대상으로 하며, 잔여 처리 시간이 가장 짧은 작업을 우선 처리하는 원칙(SRPT)을 활용하여 가중 평균 작업 완료 시간을 최소화하는 새로운 온라인 작업 클로닝 알고리즘인 SRPTMS+C를 제안한다. 이 알고리즘은 (1+ε)-속도 o(1/ε²)-경쟁 비율을 달성하며, Mantri 기준 대비 가중/비가중 작업 완료 시간을 약 25% 감소시킨다. 기존 히ュ리스틱 기반의 방법들과는 달리 형식적인 성능 보장을 제공하면서도 MapReduce의 단계 간 순서 제약 조건을 준수한다.
Job scheduling for a MapReduce cluster has been an active research topic in recent years. However, measurement traces from real-world production environment show that the duration of tasks within a job vary widely. The overall elapsed time of a job, i.e. the so-called flowtime, is often dictated by one or few slowly-running tasks within a job, generally referred as the "stragglers". The cause of stragglers include tasks running on partially/intermittently failing machines or the existence of some localized resource bottleneck(s) within a MapReduce cluster. To tackle this online job scheduling challenge, we adopt the task cloning approach and design the corresponding scheduling algorithms which aim at minimizing the weighted sum of job flowtimes in a MapReduce cluster based on the Shortest Remaining Processing Time scheduler (SRPT). To be more specific, we first design a 2-competitive offline algorithm when the variance of task-duration is negligible. We then extend this offline algorithm to yield the so-called SRPTMS+C algorithm for the online case and show that SRPTMS+C is $(1+ε)-speed$ $o(\frac{1}{ε^2})-competitive$ in reducing the weighted sum of job flowtimes within a cluster. Both of the algorithms explicitly consider the precedence constraints between the two phases within the MapReduce framework. We also demonstrate via trace-driven simulations that SRPTMS+C can significantly reduce the weighted/unweighted sum of job flowtimes by cutting down the elapsed time of small jobs substantially. In particular, SRPTMS+C beats the Microsoft Mantri scheme by nearly 25% according to this metric.
연구 동기 및 목표
- 지연 작업이 작업 완료 시간을 크게 증가시키는 MapReduce 클러스터의 스트래글러 문제를 해결하기 위해.
- Map 및 Reduce 단계 간 순서 제약 조건을 고려하여 가중 평균 작업 완료 시간을 최소화하는 스케줄링 알고리즘을 설계하기 위해.
- 작업 소요 시간에 대한 사전 지식이 제한된 온라인 작업 스케줄링에 대해 성능 보장을 제공하기 위해(경쟁 경계 보장).
- 작업 소요 시간의 전체 분포가 아닌 첫 번째 및 두 번째 모멘트만을 사용하여 전체 분포 의존도를 줄이기 위해.
- Mantri와 같은 히ュ리스틱 기반의 사절적 실행 기법보다 증명 가능한 효율성과 낮은 시스템 인스트루멘테이션 오버헤드를 제공하기 위해.
제안 방법
- Map 및 Reduce 단계 간 순서 제약 조건을 고려하여 가중 평균 작업 완료 시간을 최소화하는 스토케스틱 최적화 문제로 작업 스케줄링 문제를 수립하기 위해.
- 작업 소요 시간 분산이 무시할 만큼 작을 것이라는 가정 하에, SRPT 스케줄러를 영감으로 삼아 오프라인 2-경쟁 비율 알고리즘을 설계하기 위해.
- 이론적 하한을 극복하기 위해 자원 증강(1+ε-속도)을 사용하여 오프라인 알고리즘을 온라인 환경으로 확장하기 위해.
- 잠재 함수 분석을 적용하여 온라인 경우에 대한 SRPTMS+C의 o(1/ε²)-경쟁 상한을 유도하기 위해.
- 효율적 워크로드 추정치를 기반으로 하여 작업 클로닝을 통합하고, 잔여 처리 시간이 짧은 작업을 우선 순위로 설정하기 위해.
- 실제 작업 추적 데이터를 기반으로 한 추적 기반 시뮬레이션을 수행하여 성능을 평가하고, 클러스터 크기 및 파라미터 변화에 따라 SRPTMS+C를 SCA 및 Mantri와 비교하기 위해.
실험 결과
연구 질문
- RQ1작업 클로닝 알고리즘이 MapReduce 클러스터에서 가중 평균 작업 완료 시간을 최소화하기 위해 증명 가능한 경쟁 성능 경계를 달성할 수 있는가?
- RQ2Map-Reduce 단계 간 순서 제약 조건을 고려하는 것이 이를 忽시하는 것보다 스케줄링 효율성을 얼마나 향상시키는가?
- RQ3전체 분포 대신 작업 소요 시간의 첫 번째 및 두 번째 모멘트만을 사용할 경우 알고리즘 성능에 어떤 영향을 미치는가?
- RQ4SRPTMS+C 알고리즘이 Mantri와 같은 히ュ리스틱 기반 기법과 비교해 완료 시간 감소 및 시스템 오버헤드 측면에서 어떻게 성과를 내는가?
- RQ5SRPTMS+C 알고리즘에서 흐름 시간 감소와 자원 활용도 간의 트레이드오프를 최적화하기 위해 어떤 파라미터 설정(ε, r)이 가장 적합한가?
주요 결과
- 추적 기반 시뮬레이션에서 SRPTMS+C는 Mantri 기준 대비 가중 평균 작업 완료 시간을 약 25% 감소시켰다.
- 온라인 스케줄링에서 SRPTMS+C는 (1+ε)-속도 o(1/ε²)-경쟁 비율을 확보하여 형식적인 성능 보장을 제공한다.
- 소형 작업의 경우 SRPTMS+C 하에서 100초 이내에 50% 이상이 완료되었으며, SCA와 Mantri는 각각 46% 및 44%였다.
- 대형 작업의 경우 SRPTMS+C 하에서 1000초 이내에 90%가 완료되었으며, SCA(88%) 및 Mantri(86%)를 능가했다.
- 오프라인 알고리즘은 작업 소요 시간 분산이 무시할 만큼 작을 경우 2-경쟁 비율을 달성했으며, 고확률 완료 시간 경계를 제공한다.
- 8,000台의 머신에서도 SRPTMS+C는 12,000대 머신 클러스터 수준의 완료 시간 성능을 달성하여 자원 활용 효율성이 뛰어나다는 것을 보여주었다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.