Question

J'espère que je vous pose cette question dans le droit chemin. J'apprends mon chemin Elastic MapReduce et je l'ai vu de nombreuses références au réducteur « agrégat » qui peut être utilisé avec les flux d'emplois « streaming ».

Dans la "Introduction à Amazon Elastic MapReduce" PDF, il déclare d'Amazon "Amazon Elastic MapReduce a un réducteur par défaut appelé agrégat"

Ce que je voudrais savoir est: sont là d'autres réducteurs par défaut availiable

?

Je comprends que je peux écrire mon propre réducteur, mais je ne veux pas finir par écrire quelque chose qui existe déjà et « réinventer la roue » parce que je suis sûr que ma roue ne sera pas aussi bonne que l'original.

Était-ce utile?

La solution

Je suis dans une situation similaire. Je déduis de résultats Google etc que la réponse est en ce moment: « Non, il n'y a pas d'autres réducteurs par défaut dans Hadoop », qui aspire en quelque sorte, parce que ce serait évidemment utile d'avoir des réducteurs par défaut comme, par exemple, « moyen » ou « médiane "de sorte que vous ne devez pas écrire votre propre.

http://hadoop.apache.org/common/docs/current/api/org/apache/hadoop/mapred/lib/aggregate/package-summary.html montre un certain nombre d'utilisations agrégateurs utiles, mais je ne peux pas trouver documentation pour savoir comment accéder à d'autres fonctionnalités que la somme clé très basique / valeur décrite dans la documentation et dans la réponse de Erik Forsberg. Peut-être que cette fonctionnalité est exposée uniquement dans l'API Java, que je ne veux pas utiliser.

Soit dit en passant, je suis la réponse de peur Erik Forsberg n'est pas une bonne réponse à cette question particulière. Une autre question à laquelle il pourrait être une réponse utile peut être construit, mais ce n'est pas ce que l'OP demande.

Autres conseils

Le réducteur ils se réfèrent à est documenté ici:

http : //hadoop.apache.org/docs/stable/api/org/apache/hadoop/mapred/lib/aggregate/package-summary.html

C'est un réducteur qui est intégré dans l'utilitaire de streaming. Il offre un moyen simple de faire le calcul commun en écrivant un mappeur que les clés de sortie qui sont formatées d'une manière particulière.

Par exemple, si vos sorties Mapper:

LongValueSum:id1\t12
LongValueSum:id1\t13
LongValueSum:id2\t1
UniqValueCount:id3\tval1
UniqValueCount:id3\tval2

Le réducteur va calculer la somme de chaque LongValueSum, et compter les valeurs distinctes pour UniqValueCount. La sortie du réducteur sera donc:

id1\t25
id2\t12
id3\t2

Les réducteurs et combineurs dans ce paquet sont très rapide par rapport à la course en streaming multiplexeurs et réducteurs, donc en utilisant le paquet global est à la fois pratique et rapide.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top