[HADOOP] Hadoop MapReduce에서 여러 개의 다른 매퍼로 여러 입력을 가질 수 있습니까?
HADOOPHadoop MapReduce에서 여러 개의 다른 매퍼로 여러 입력을 가질 수 있습니까?
Hadoop MapReduce에서 여러 개의 다른 매퍼로 여러 입력을 가질 수 있습니까? 각 매퍼 클래스는 다른 입력 집합에서 작동하지만 동일한 감속기에서 소비되는 키 - 값 쌍을 모두 방출합니다. 여기서 매퍼를 연결하는 것에 대해 이야기하는 것이 아니며, 순차적이 아닌 다른 매퍼를 병렬로 실행하는 것에 대해 말하고 있습니다.
해결법
-
==============================
1.이것을 결합이라고합니다.
이것을 결합이라고합니다.
맵핑 된. * 패키지 (이전이지만 여전히 지원됨)에서 맵퍼 및 축소 기 (reducers)를 사용하려고합니다. 새로운 패키지 (mapreduce. *)는 한 개의 매퍼 입력 만 허용합니다. 맵핑 된 패키지를 사용하면 MultipleInputs 클래스를 사용하여 조인을 정의 할 수 있습니다.
MultipleInputs.addInputPath(jobConf, new Path(countsSource), SequenceFileInputFormat.class, CountMapper.class); MultipleInputs.addInputPath(jobConf, new Path(dictionarySource), SomeOtherInputFormat.class, TranslateMapper.class); jobConf.setJarByClass(ReportJob.class); jobConf.setReducerClass(WriteTextReducer.class); jobConf.setMapOutputKeyClass(Text.class); jobConf.setMapOutputValueClass(WordInfo.class); jobConf.setOutputKeyClass(Text.class); jobConf.setOutputValueClass(Text.class);
-
==============================
2.나는 당신의 질문에 답할 것이고, 2 개의 답과 반대로 추천 할 것입니다.
나는 당신의 질문에 답할 것이고, 2 개의 답과 반대로 추천 할 것입니다.
질문은 다음과 같습니다. 이질적 인 맵 작업을 병렬로 실행하는 것과 달리 직렬로 실행하는 것과 달리 제대로 균등 한 결과를 출력하는 것이 어떤 이점입니까? 아이덴티티 맵을 사용하여 한 번 같은 레코드를 두 번 지나치지 않도록하는 아이디어입니까?
첫 번째 대답은 두 매퍼 전용 작업을 동시에 (각 작업량의 절반에 해당하거나 입력 데이터 크기에 가장 적합한 비율로) 동시에 수행하여 균일 한 결과를 출력 한 다음 참가를 수행하는 감속기 전용 작업을 수행하는 것입니다.
두 번째 대답은 이기종 입력의 두 가지 맛을 인식하고 변형 할 수있는 사용자 지정 InputFormat을 만드는 것입니다. 이것은 극히 추악하지만 첫 번째 제안에 대한 불필요한 신원 맵을 피할 수 있습니다.
추천은 Chris의 대답에서 비추천 Hadoop API를 사용하지 않는 것입니다. Hadoop은 매우 젊지 만 API는 "새로운"맛을 중심으로 안정화되고 있습니다. 결국 버전 잠금 기능에 도달하게됩니다.
from https://stackoverflow.com/questions/11059725/is-it-possible-to-have-multiple-inputs-with-multiple-different-mappers-in-hadoop by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 첫 번째 hadoop 프로젝트 오류 : "입력 경로가 존재하지 않습니다" (0) | 2019.06.16 |
---|---|
[HADOOP] 워드 카운트 프로그램이 hadoop-2.3.0에서 멈췄다. (0) | 2019.06.16 |
[HADOOP] Hadoop의 FileSystem API 호출 목록에있는 와일드 카드 (0) | 2019.06.16 |
[HADOOP] 맵에서 값의 유형이 일치하지 않습니다. 예상 org.apache.hadoop.io.NullWritable, 수신 된 org.apache.hadoop.io.Text (0) | 2019.06.16 |
[HADOOP] Hadoop Mapper가 "ApplicationMaster에 의해 종료 된 컨테이너"로 인해 실패했습니다. (0) | 2019.06.16 |