[HADOOP] Hadoop : 매퍼와 감속기의 수
HADOOPHadoop : 매퍼와 감속기의 수
Hadoop MapReduce를 다른 매퍼와 축소 기 (예 : 매퍼 1 개, 감속기 1 개, 매퍼 1 개, 감속기 2 개, 매퍼 1 개, 감속기 4 개)로 여러 번 1.1GB 파일로 실행했습니다.
Hadoop은 하이퍼 스레딩 기능을 갖춘 쿼드 코어 시스템에 설치됩니다.
다음은 가장 짧은 실행 시간순으로 정렬 된 상위 5 개의 결과입니다.
+----------+----------+----------+
| time | # of map | # of red |
+----------+----------+----------+
| 7m 50s | 8 | 2 |
| 8m 13s | 8 | 4 |
| 8m 16s | 8 | 8 |
| 8m 28s | 4 | 8 |
| 8m 37s | 4 | 4 |
+----------+----------+----------+
1 - 8 감속기와 1 - 8 매퍼의 결과 : column = 매퍼 수 행 = 감속기 수
+---------+---------+---------+---------+---------+
| | 1 | 2 | 4 | 8 |
+---------+---------+---------+---------+---------+
| 1 | 16:23 | 13:17 | 11:27 | 10:19 |
+---------+---------+---------+---------+---------+
| 2 | 13:56 | 10:24 | 08:41 | 07:52 |
+---------+---------+---------+---------+---------+
| 4 | 14:12 | 10:21 | 08:37 | 08:13 |
+---------+---------+---------+---------+---------+
| 8 | 14:09 | 09:46 | 08:28 | 08:16 |
+---------+---------+---------+---------+---------+
(1) 8 개의 매퍼가있을 때 프로그램 실행 속도가 약간 빨라지지만 감속기 수가 증가하면 속도가 느려지는 이유는 무엇입니까? (예 : 8 마커 / 2 리드가 8 마더 / 8 리드보다 빠름)
(2) 내가 4 개의 맵퍼만을 사용할 때 다른 4 개의 코어를 사용하지 않기 때문에 조금 느립니다.
해결법
-
==============================
1.매퍼와 리듀서의 최적 수는 많은 것들과 관련이 있습니다.
매퍼와 리듀서의 최적 수는 많은 것들과 관련이 있습니다.
목표로하는 가장 중요한 것은 사용 된 CPU 성능, 전송되는 데이터의 양 (매퍼, 매퍼와 감속기 사이 및 감속기 밖으로) 및 디스크 '헤드 동작'간의 균형입니다.
mapreduce 작업의 각 작업은 최소한의 디스크 헤드 동작으로 데이터를 읽고 쓸 수 있으면 가장 잘 작동합니다. 일반적으로 "순차적 읽기 / 쓰기"라고합니다. 그러나 작업이 CPU에 제한되면 여분의 디스크 헤드 이동이 작업에 영향을 미치지 않습니다.
이 특별한 경우에 당신은
이러한 상황을 처리 할 수있는 가능한 방법은 다음과 같습니다.
먼저 수행 한 작업을 정확하게 수행하십시오. 몇 가지 테스트를 실행하고이 특정 작업과 특정 클러스터에 가장 적합한 설정을 확인하십시오.
그런 다음 세 가지 옵션이 있습니다.
짐을 옮기기위한 제안 사항 :
-
==============================
2."하둡 정식 가이드, 제 3 판", 306 페이지 인용
"하둡 정식 가이드, 제 3 판", 306 페이지 인용
위의 인용 부호에있는 프로세서는 하나의 논리 코어와 같습니다.
하지만 이것은 이론적 인 것이며 Niels의 자세한 설명과 같이 각 유스 케이스가 다른 유스 케이스와 다를 가능성이 높습니다. 일부 테스트는 수행해야합니다.
from https://stackoverflow.com/questions/20307404/hadoop-number-of-mappers-and-reducers by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 한 번에 여러 행을 읽는 Hadoop (0) | 2019.07.08 |
---|---|
[HADOOP] hadoop 대 teradata 차이점은 무엇입니까? (0) | 2019.07.08 |
[HADOOP] Hadoop MapReduce : 하나의 하프 직업 클래스에 두 개의 매퍼와 리듀서를 정의 할 수 있습니까? (0) | 2019.07.08 |
[HADOOP] 매퍼 (mapper)에서 라인 단위로 HDFS에서 텍스트 파일 읽기 (0) | 2019.07.08 |
[HADOOP] 하이브에 데이터를 조 변경하는 방법이 있습니까? (0) | 2019.07.08 |