기본적으로 CPU, RAM, 디스크 및 네트워크의 네 가지 항목을 찾아야합니다. 설정이 이러한 메트릭의 임계 값을 초과하면 한계를 초과한다는 것을 추론 할 수 있습니다. 예를 들어 "mapred.reduce.parallel.copies"의 값을 사용 가능한 코어 수보다 훨씬 큰 값으로 설정 한 경우이 속성을 기반으로 대기 상태에서 너무 많은 스레드가 종료됩니다. 스레드 맵 출력을 가져 오기 위해 생성됩니다. 그 네트워크에 추가로 압도 당할 수도 있습니다. 또는 셔플 할 중간 출력이 너무 많으면 디스크 기반 셔플이 필요하므로 작업이 느려지므로 RAM 기반 셔플보다 느립니다. RAM을 기준으로 "mapred.job.shuffle.input.buffer.percent"에 현명한 값을 선택하십시오 (기본값은 Reducer 힙의 70 %로 보통 좋음). 그래서, 이것들은 당신이 지나치게 병렬 처리를하고 있는지 아닌지를 알려줄 것입니다. 고려해야 할 많은 것들이 있습니다. "Hadoop Definitve Guide"의 6 장을 읽어 보시기 바랍니다.
당신이 효율적으로 당신의 작업을하기 위해 취할 수있는 조치의 일부
는 데이터 전송을 제한하는 결합기를 사용하여 같은 등
HTH
PS를 중간 압축을 사용하고 있습니다 : 대답을 "mapred.reduce.parallel.copies"에만 그다지 특이한 것은 아닙니다. 일반적으로 작업 조정에 대해 알려줍니다. 실제로이 속성 만 설정하면 큰 도움이되지 않습니다. 다른 중요한 속성도 고려해야합니다.
통찰력을 가져 주셔서 감사합니다! –