지난글에 이어서 이번 빅데이터공부하기도

Reducer 클래스에 대해서 공부하겠습니다.

이번엔 코딩하고 설명을 보도록 하겟습니다. ^-^

 

빅데이터공부는 --> 오라클자바교육센터에서 듣고가세요.

 

Reducer 클래스

 

public static class Reduce extends Reducer<Text, LongWritable, Text, LongWritable>

{

private LongWritable sumWritable= new Long Writable();

 

public void reduce(Text key, lterable<LongWritable>nalues, Context context)

throws IOException

{

long sum=0;

for (LongWritable val : values)

{

sum+=val.get();

}

sumWritable.set(sum);

context.write(key,sumWritable);

}

}

 

1. 입력레코드의 키, 밸류 타입은 mapper에서 사용한 키, 밸류타입에 의해 결정

 

2. reduce 메소드에서 사용할 변수를 미리 하나 만들어둔다.

 

3. reduce 메소드로 넘어오는 밸류 필드는 리스트타입이며 mapper 단에서 같은 키값을 갖는 밸류들이 리스트형태로 묶여진 것이다. 리스트내의 원소들의 값을 합한 다음 (결국 주어진 단어가 나타난 회수를 카운트하는 셈) 단어를 키로 지정하고 합을 밸류로 지정하여 프레임으로 넘긴다. 이 출력레코드는 지정된 출력포맷에 맞춰 앞서 지정된 HDFS위치에 저장된다(Job 클래스의 setOutputPath 메소드)

 

 

 

 

+ Recent posts