Processamento de Dados Massivos/Projeto e implementação de aplicações Big Data/Maximização de expectativas: diferenças entre revisões

[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Linha 106:
===Estratégias de Paralelização===
<syntaxhighlight lang="Java">
public voidstatic map(LongWritableclass keyMap extends MapReduceBase implements Mapper<LongWritable, Text value, OutputCollector<IntWritable, DoubleArrayWritable> output){
String line = value.toString();
private double bias_1;
private double bias_2;
//captura o valor dos biases já calculados para cada moeda
public void configure(JobConf job){
bias_1 = Double.parseDouble(job.get("bias_1"));
bias_2 = Double.parseDouble(job.get("bias_2"));
}
public void map(LongWritable key, Text value, OutputCollector<IntWritable, DoubleArrayWritable> output){
String line = value.toString();
double[] headBiases = new double[2];
headBiases[0] = bias_1;
headBiases[1] = bias_2;
StringTokenizer tokenizer = new StringTokenizer(line);
int num_caras = Integer.parseInt(tokenizer.nextToken());
int num_coroas = Integer.parseInt(tokenizer.nextToken());
TossesSet tossesSet = new TossesSet(num_caras, num_coroas);
double[][] completion = tossesSet.getCompletion(headBiases);
DoubleWritable[] moeda1 = new DoubleWritable[2];
DoubleWritable[] moeda2 = new DoubleWritable[2];
moeda1[HEADS] = new DoubleWritable(completion[0][HEADS]);
moeda2[HEADS] = new DoubleWritable(completion[1][HEADS]);
moeda1[TAILS] = new DoubleWritable(completion[0][TAILS]);
moeda2[TAILS] = new DoubleWritable(completion[1][TAILS]);
try{
output.collect(new IntWritable(21), new DoubleArrayWritable(moeda2moeda1));
try{
output.collect(new IntWritable(12), new DoubleArrayWritable(moeda1moeda2));
}catch(Exception e){
output.collect(new IntWritable(2), new DoubleArrayWritable(moeda2));
System.out.println("erro");
}catch(Exception e){
}
System.out.println("erro");
}
}
}
</syntaxhighlight>