[HADOOP] 이는지도 작업의 수를 결정하고 하이브에서 작업을 감소?
HADOOP이는지도 작업의 수를 결정하고 하이브에서 작업을 감소?
나는 쿼리를 실행 하이브를 사용하여 "T1에서 *를 선택 T1.A = T2.b T2"가 실행되면, 스키마는 T1 (정수 (int), B의 INT), T2 (정수 (int), B의 INT)이며, 6지도 작업 하나는 작업이 생성 감소, 나는지도 작업의 수를 결정하는 것을 물어 및 작업을 줄이고 자? 데이터 볼륨은?
해결법
-
==============================
1.지도 작업의 수는 데이터 크기, 블럭 크기 및 분할의 크기에 의존한다. 예를 들면 : 당신이 블록 크기 128 MB의이 당신의 파일 크기가 1 인 경우 GB는지도 작업의 8 수있을 것입니다. 당신은 분할 크기를 사용하여 제어 할 수 있습니다.
지도 작업의 수는 데이터 크기, 블럭 크기 및 분할의 크기에 의존한다. 예를 들면 : 당신이 블록 크기 128 MB의이 당신의 파일 크기가 1 인 경우 GB는지도 작업의 8 수있을 것입니다. 당신은 분할 크기를 사용하여 제어 할 수 있습니다.
그리고 하이브 작업의 톱니의 수는 기본적으로 1입니다. 당신은 구성을 통해이를 업데이트해야
<property> <name>mapred.reduce.tasks</name> <value>-1</value> <description>The default number of reduce tasks per job. Typically set to a prime close to the number of available hosts. Ignored when mapred.job.tracker is "local". Hadoop set this to 1 by default, whereas hive uses -1 as its default value. By setting this property to -1, Hive will automatically figure out what should be the number of reducers. </description> </property>
-
==============================
2.
> mapred.max.split.size > mapred.min.split.size
-
==============================
3.하이브> EMP SELECT *; 그런 다음이 어떤지도 할 수없고 시작됩니다 줄일 수 있습니다. 우리는 데이터 만 덤프 의미합니다.
하이브> EMP SELECT *; 그런 다음이 어떤지도 할 수없고 시작됩니다 줄일 수 있습니다. 우리는 데이터 만 덤프 의미합니다.
그래서 얼마나 많은지도를 원하고 내가 쿼리를 타격하고 때 시작을 줄이십시오.
하이브> 이름 EMP 그룹의 선택 수 (*);
우리는 쿼리하기 전에 키워드를 설명 추가 한 경우가 얼마나 많은지도 보여가는 시작 얻을 것이다 줄일 수 있습니다.
하이브> 이름으로 EMP 그룹에서 SELECT COUNT (*)를 설명;
from https://stackoverflow.com/questions/23287403/which-determines-the-number-of-map-tasks-and-reduce-tasks-in-hive by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 카산드라 / 하둡 / 로딩 및 처리 데이터를 돼지 디자인 (0) | 2019.09.25 |
---|---|
[HADOOP] HBase를 REST 호출 - 점점 정크 문자 "\ X0A" (0) | 2019.09.25 |
[HADOOP] MongoDB의에서 HBase를 마이그레이션 (0) | 2019.09.25 |
[HADOOP] CDH 의사 클러스터에 JobTracker를하고 Tasktracker을 시작하지 못했습니다 (0) | 2019.09.25 |
[HADOOP] JobTracker를 UI는 하둡 작업의 진행률을 표시하지 (0) | 2019.09.25 |