Hadoop: Nombre de cartographes et les réducteurs
J'ai couru Hadoop MapReduce sur 1,1 GO fichier plusieurs fois avec un nombre différent de cartographes et les réducteurs (par exemple, 1 mappeur et 1 réducteur, 1 mappeur et 2 réducteurs, 1 mappeur et 4 réducteurs, ...)
Hadoop est installé sur quad-core avec hyper-threading.
Voici le top 5 résultat trié par le plus court temps d'exécution:
+----------+----------+----------+
| time | # of map | # of red |
+----------+----------+----------+
| 7m 50s | 8 | 2 |
| 8m 13s | 8 | 4 |
| 8m 16s | 8 | 8 |
| 8m 28s | 4 | 8 |
| 8m 37s | 4 | 4 |
+----------+----------+----------+
Modifier
Le résultat, pour les 1 - 8 réducteurs et 1 - 8 mappeurs:
colonne = nombre de mappers
ligne = # de réducteurs
+---------+---------+---------+---------+---------+
| | 1 | 2 | 4 | 8 |
+---------+---------+---------+---------+---------+
| 1 | 16:23 | 13:17 | 11:27 | 10:19 |
+---------+---------+---------+---------+---------+
| 2 | 13:56 | 10:24 | 08:41 | 07:52 |
+---------+---------+---------+---------+---------+
| 4 | 14:12 | 10:21 | 08:37 | 08:13 |
+---------+---------+---------+---------+---------+
| 8 | 14:09 | 09:46 | 08:28 | 08:16 |
+---------+---------+---------+---------+---------+
(1)
Il semble que le programme tourne légèrement plus vite quand j'ai 8 cartographes, mais pourquoi est-il ralentir comme je l'augmentation du nombre de réducteurs? (par exemple, 8mappers/2reducers est plus rapide que 8mappers/8reducers)
(2)
Lorsque j'utilise seulement 4 cartographes, c'est un peu plus lent, tout simplement parce que je ne suis pas en utilisant l'autre de 4 cœurs, droit?
Oui, il est installé sur 1 machine qui est un quad-core avec hyper-threading.
Combien de fois avez-vous essayé de chaque étape? Que voyez-vous dans les compteurs, sont de réduire les touches bien réparties? Il est assez difficile de dire quoi que ce soit sans compteurs, des journaux et de la configuration.
Combien de disques physiques sont disponibles pour ce pseudo?
Je voudrais voir 1,2,4,8 mappeurs de chacun avec 1,2,4,8 réducteurs aussi.
OriginalL'auteur kabichan | 2013-12-01
Vous devez vous connecter pour publier un commentaire.
Le nombre optimal de cartographes et de réducteurs de a à faire avec beaucoup de choses.
La principale chose à viser est l'équilibre entre l'utilisé la puissance du PROCESSEUR, la quantité de données qui est transporté (en mappeur, entre mappeur et réducteur, et les réducteurs) et le disque "les mouvements de la tête'.
Chaque tâche mapreduce travail fonctionne mieux si elle peut lire/écrire les données 'avec un minimum de disque mouvements de la tête'. Généralement décrits comme des "séquentielle des lectures/écritures". Mais si la tâche est liée à l'UC supplémentaires diskhead mouvements n'ont pas d'incidence de l'emploi.
Il me semble que dans ce cas précis, vous avez
Possible façons de gérer ce genre de situation:
D'abord faire exactement ce que vous avez fait: Faire quelques essais et voir le paramètre qui donne les meilleurs résultats compte tenu de ce travail et de votre cluster spécifique.
Ensuite, vous avez trois options:
Suggestions pour déplacement de la charge:
Si en CPU, et tous les Processeurs sont entièrement chargés ensuite de réduire la charge du PROCESSEUR:
Si IO lié et que vous avez une capacité d'UC à gauche:
Est-il possible de contrôler le nombre de cœurs (de travail) pour un mapred travail dans un processeur multi-core comme le i7,i5, etc? Combien de nombre de cœurs de travail par défaut? Tout d'observations? Merci d'avance
Un seul mappeur ou réducteur de la tâche en général l'utilisation d'un seul cœur de processeur. Dans le framework hadoop, vous pouvez définir le nombre maximal de cartographes et les réducteurs par travailleur nœud. Fil n'est encore mieux.
OriginalL'auteur Niels Basjes
Citant "Hadoop Le Précise le Guide, 3e édition", page 306
Un processeur dans la citation ci-dessus est équivalente à une logique de base.
Mais ce n'est que dans la théorie et la plus probable de chaque cas d'utilisation est différent d'un autre, comme Niels explication détaillée, certains tests doivent être effectués.
OriginalL'auteur Jifeng Zhang