2017-09-13 2 views
1

Je cours un travail de hadoop avec 16 tâches de réduction. (hadoop-1.2.1)progression de hadoop réducteur 100% mais ne finit pas

Certains d'entre eux ont 100% de progrès, mais ils ne se terminent pas. ils ont juste bloqué à 100% et le nettoyage du travail: en attente. Et leur statut affiche uniquement 'réduire> réduire'.

Je suppose que ce problème se produit car le travail écrit trop de sorties multiples. (environ 50 ~ 100 sorties multiples) Mais c'est juste ma conjecture. Je ne sais pas exactement qu'écrire plusieurs sorties multiples provoque ce problème. Quelqu'un pourrait-il me dire ce qui cause ce problème en détail? J'ai beaucoup cherché pour cela, mais je n'ai pas trouvé de réponse claire.

Cordialement.

+0

votre estimation est raisonnable. les E/S de disque sont très souvent le goulot d'étranglement d'un travail MapReduce. – vefthym

+0

Si ma réponse est exacte, quelle est la différence entre l'écriture de plusieurs sorties multiples et de nombreuses valeurs dans les fichiers R-000XX de chaque réducteur? et il semble qu'il soit toujours bloqué à la fermeture de plusieurs fichiers de sortie n'écrivant pas de valeurs dans les fichiers. Merci pour votre commentaire. – DoDary

Répondre

0

Avez-vous regardé dans les journaux des tâches? Vous devriez être capable de dire ce que la tâche est en train de faire. Par exemple, vous devriez voir s'il fusionne des fichiers.

De même, notez la quantité de données traitées par les réducteurs. Les réducteurs qui terminent le traitement sont-ils moins renseignés que ceux qui ne sont pas terminés en même temps? Si tel est le cas, cela indique un biais du réducteur (dérive des données), ils font plus de travail que les autres.

+0

J'ai vérifié les logs des tâches et j'ai trouvé que certaines d'entre elles avaient imprimé l'erreur 'java.io.IOException: JvmValidate Failed'. Je pense qu'il y a un problème dans mon code. Je vais jeter un coup d'oeil plus. Merci pour votre réponse. – DoDary

+0

J'ai regardé le journal plus. L'erreur que j'ai mentionnée ci-dessus n'est pas en phase bloquée. Je n'ai pas pu trouver d'erreur après que le progrès ait atteint 100%. Mais il a imprimé '1.0% reduce> reduce', et après 15 minutes, il a imprimé 'Task try_201709141045_0002_r_000008_0 est en attente de validation'. Il y a un blanc pendant 15 minutes. – DoDary