2012-08-31 2 views
1

MapReduce FIFO 스케줄러에 대해 질문이 있습니다. 작업이 대기열에 도착할 때 실행됩니다 (동일한 우선 순위가있는 한). 나의 일은 현재 직업이 끝날 때까지 다음 직업을 기다리는 것이다. 그러나 현재 작업이 용량을 완전히 소모하지 않고 다음 작업이 나머지 용량으로 실행될 수 있다면 어떻습니까? 이 경우 다음 작업이 즉시 실행되거나 현재 작업이 완료 될 때까지 대기합니다.MapReduce FIFO 스케줄러

첫 번째 작업이 완료 될 때까지 두 번째 작업을 수행해야하는 경우 관련 작업은 첫 번째 작업이 맵 작업으로 완료 될 때 두 번째 작업의 맵 작업을 실행할 수 있는지 여부입니다.

답변

1

먼저 클러스터의 각 노드는 고정 된 양의 슬롯을 가지며이 슬롯은 작업 매핑 및 작업 감소에 똑같이 할당됩니다. FIFO 스케쥴러에서는 왜곡이 발생할 때 그다지 효율적이지 않습니다. 예를 들어 이전 작업에 맵 작업이 있거나 "영원히"완료되는 작업을 줄이면 전체 시스템이 중단 될 수 있습니다. MapReduce에서 채택 된 투기 적 실행으로 인해 다행히도 이러한 일이 발생하지 않습니다. 스트라 글러가 발견되면 클론은 다른 노드에서 시작됩니다.

첫 번째 질문 : 대답은 '예'라고 생각합니다. 남은 용량은 물론 다음 작업에서 사용됩니다.

두 번째 질문 : 남은 용량을 사용할 수없는 경우 다음 작업을 기다려야합니다. 이전 작업이 맵 작업을 완료하면 맵 작업을위한 슬롯이 해제되었음을 의미합니다. 그래서 다음 작업은지도 단계를 시작할 수 있습니다.