Dans mon application, je veux créer autant de travaux réducteur que possible en fonction des touches. Maintenant, mon implémentation actuelle écrit toutes les clés et les valeurs dans un seul fichier de sortie (réducteur). Donc, pour résoudre ce problème, j'ai utilisé un partitionneur mais je ne peux pas appeler la classe. Le partitionneur doit être appelé après la tâche de sélection de carte et avant la tâche de réduction de sélection mais pas le code suivant:Comment appeler Partitioner dans Haoop v 0.21
public class MultiWayJoinPartitioner extends Partitioner<Text, Text> {
@Override
public int getPartition(Text key, Text value, int nbPartitions) {
return (key.getFirst().hashCode() & Integer.MAX_VALUE) % nbPartitions;
return 0;
}
}
Ce code est-il correct pour partitionner les fichiers en fonction des clés et des valeurs et la sortie sera automatiquement transférée au réducteur?
Avez-vous déjà eu ce travail? –