[논문 리뷰] The Improved Job Scheduling Algorithm of Hadoop Platform
이 논문은 자원 사용 특성(예: CPU 및 메모리 사용률)을 기반으로 작업을 '좋음' 또는 '나쁨'으로 분류하고, 동적으로 최적의 작업을 실행하기 위해 베이즈 분류 기반의 작업 스케줄링 알고리즘을 제안한다. 작업 실행 결과로부터의 피드백을 활용함으로써, 적응형 학습을 통해 스케줄링 효율성과 안정성을 향상시키고 분산 환경에서의 작업 완료 시간과 자원 경쟁을 감소시킨다.
This paper discussed some job scheduling algorithms for Hadoop platform, and proposed a jobs scheduling optimization algorithm based on Bayes Classification viewing the shortcoming of those algorithms which are used. The proposed algorithm can be summarized as follows. In the scheduling algorithm based on Bayes Classification, the jobs in job queue will be classified into bad job and good job by Bayes Classification, when JobTracker gets task request, it will select a good job from job queue, and select tasks from good job to allocate JobTracker, then the execution result will feedback to the JobTracker. Therefore the scheduling algorithm based on Bayes Classification influence the job classification via learning the result of feedback with the JobTracker will select the most appropriate job to execute on TaskTracker every time. We need to consider the feature usage of job resource and the influence of TaskTracker resource on task execution, the former of which we call it job feature, for instance, the average usage rate of CPU and average usage rate of memory, the latter node feature, such as the usage rate of CPU and the size of idle physical memory, the two are called feature variables. Results show that it has a significant improvement in execution efficiency and stability of job scheduling.
연구 동기 및 목표
- 적응형 학습과 자원 인지 의사결정을 갖추지 못한 기존 Hadoop 작업 스케줄링 알고리즘의 비효율성을 해결하기 위해.
- 베이지안 분류를 사용해 작업을 '좋음'과 '나쁨'으로 분류함으로써 작업 스케줄링 성능을 향상시키기 위해.
- 작업 실행 결과로부터의 피드백을 스케줄링 결정에 통합함으로써 시스템 안정성과 실행 효율성을 향상시키기 위해.
- 작업과 TaskTracker의 자원 특성(예: CPU 및 메모리 사용량)을 입력 변수로 모델링하여 지능적인 스케줄링을 구현하기 위해.
- 동적이고 데이터 기반의 작업 선택을 통해 작업 완료 시간과 자원 경쟁을 감소시키기 위해.
제안 방법
- 대기열에 있는 작업들은 이전 자원 사용 패턴을 기반으로 베이지안 분류를 사용해 '좋음' 또는 '나쁨'으로 분류된다.
- 특성 변수로는 작업 특성(예: 평균 CPU 및 메모리 사용량)과 노드 특성(예: TaskTrackers의 대기 중 메모리 및 CPU 사용량)이 포함된다.
- JobTracker는 이전 작업 실행 결과로부터의 피드백을 사용해 분류 모델을 업데이트하고 시간이 지남에 따라 작업 선택을 정교화한다.
- 알고리즘은 스케줄링을 위해 오직 '좋음'으로 분류된 작업들만 선택하며, 유리한 자원 활용 프로필을 가진 작업을 우선순위로 삼는다.
- 실행 결과로부터의 지속적 학습을 통해 미래의 스케줄링 결정을 향상시켜 적응성을 높인다.
- 스케줄링 과정은 작업 수준과 노드 수준의 자원 특성을 통합하여 작업 할당 최적화를 실현한다.
실험 결과
연구 질문
- RQ1Hadoop에서 작업 스케줄링을 어떻게 개선하여 작업 완료 시간과 자원 경쟁을 줄일 수 있는가?
- RQ2베이지안 분류가 자원 사용 특성에 기반해 작업 성능을 효과적으로 예측할 수 있는가?
- RQ3작업 실행 결과로부터의 피드백이 작업 스케줄링의 정확도와 효율성에 어떤 영향을 미치는가?
- RQ4작업 및 노드 특성 변수의 어떤 조합이 스케줄링 성공을 가장 잘 예측하는가?
- RQ5적응형 학습이 분산 Hadoop 환경에서 스케줄링 안정성과 효율성을 얼마나 향상시키는가?
주요 결과
- 제안된 알고리즘은 베이지안 분류를 통해 식별된 '좋음' 작업을 우선순위로 삼음으로써 작업 스케줄링 효율성을 크게 향상시킨다.
- 이전 성능 기반의 지능적인 작업 선택으로 인해 자원 경쟁이 감소함에 따라 시스템 안정성이 향상된다.
- 작업 실행 결과로부터의 피드백을 통해 지속적인 학습이 가능해져 시간이 지남에 따라 분류 정확도가 향상된다.
- 작업 및 노드 자원 특성(예: CPU 및 메모리 사용량)의 통합은 더 정확한 스케줄링 결정을 이끈다.
- 알고리즘은 실행 효율성 향상이 명확하게 나타나지만, 요약문에 구체적인 수치적 지표(예: 완료 시간 감소 비율)는 제공되지 않는다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.