Escolar Documentos
Profissional Documentos
Cultura Documentos
Estudo de Caso
Lucas Luna Vieira
Trabalho da disciplina:
Tecnologias Avançadas
Tutor: Denis Cople
Rio de Janeiro
2020
6
MapReduce em Java
Referência:
Os dados utilizados neste trabalho estão dispostos no arquivo abaixo:
SalesJan2009.csv
Classe VendasPais:
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.*;
import org.apache.hadoop.mapred.*;
job_conf.setJobName("VendasPorPais");
job_conf.setOutputKeyClass(Text.class);
job_conf.setOutputValueClass(IntWritable.class);
6
// Especifica o nome das classes de Mapper e Reducer
job_conf.setMapperClass(VendasPais.VendasMapper.class);
job_conf.setReducerClass(VendasPais.VendasPaisReducer.class);
job_conf.setInputFormat(TextInputFormat.class);
job_conf.setOutputFormat(TextOutputFormat.class);
my_client.setConf(job_conf);
try {
// Rodando o Job
JobClient.runJob(job_conf);
} catch (Exception e) {
e.printStackTrace();
6
Classe VendasMapper:
import java.io.IOException;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapred.*;
Classe VendasPaisReducer:
import java.io.IOException;
import java.util.*;
6
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapred.*;
int frequenciaPorPais = 0;
while (values.hasNext()) {
// Substituição de valores
frequenciaPorPais += value.get();
6
Resultado - Vendas de produtos por país: