본문 바로가기
Hadoop

Mapper

by 언덕너머에 2014. 6. 9.

  Mapper는 맴리듀스 프로그래밍 모댈에서 뱀 메서드의 기능을 수행한다. Mapper는 키와 값으로

  구성된 입력 데이터를 전달받아 이 데이터를 가공하고 분류해서 새로운 데이터 목록을 생성한다.


  public class Mapper<KEYIN, VALUEIN, KEYOUT, VALUEOUT>

  예)

   public class TokenCounterMapper extends Mapper<Object, Text, Text, IntWritable>{


     private final static IntWritable one = new IntWritable(1);

     private Text word = new Text();

   

     public void map(Object key, Text value, Context context) throws IOException, InterruptedException {

       StringTokenizer itr = new StringTokenizer(value.toString());

       while (itr.hasMoreTokens()) {

         word.set(itr.nextToken());

         context.write(word, one);

       }

     }

   }


- Method  요약

  cleanup : Mapper Class 작업의 마지막에 한 번 실행된다.

  예)

  protected void cleanup(org.apache.hadoop.mapreduce.Mapper.Context context) 

                                throws IOException, InterruptedException 


  map : key / value로 분할된 입력값에 대해서 한 번 실행된다. 대부분의 경우 override되지만, 

           default는 identity function이다.

  예)

  protected void map(KEYIN key, VALUEIN value, 

                             org.apache.hadoop.mapreduce.Mapper.Context context)

                             throws IOException, InterruptedException


  run : Mapper Class를 좀더 제어하기 위해 override 할 수 있다.

  예)

  public void run(org.apache.hadoop.mapreduce.Mapper.Context context)

                        throws IOException, InterruptedException


  setup : Mapper Class 작업이 시작될 때 처음 한 번 실행된다.

  예)

  protected void setup(org.apache.hadoop.mapreduce.Mapper.Context context)

                                throws IOException, InterruptedException

 

'Hadoop' 카테고리의 다른 글

Reducer  (0) 2014.06.09
Partitioner  (0) 2014.06.09
Inputformat 유형  (0) 2014.06.09
Hadoop 시스템 구성도  (0) 2014.06.09
FS(FieSystem) 명령어  (0) 2014.06.05