Introduction aux questions et réponses de MapReduce

MapReduce est un modèle de programmation de données parallèle simple conçu pour l'évolutivité et la tolérance aux pannes. Nous pouvons dire que MapReduce est un cadre, qui utilise le concept de nœuds pour paralléliser les problèmes qui se produisent dans les grands ensembles de données, s'ils sont un réseau local, il utilise le même matériel et si MapReduce est géographiquement distribué, il utilise respectivement du matériel différent. MapReduce est essentiellement composé de la fonction Map () et de la fonction Reduce (). Il a été rendu populaire par le projet open-source Hadoop.

Vous trouverez ci-dessous les 9 questions et réponses importantes pour les entretiens MapReduce 2019:

Si vous recherchez un emploi lié à MapReduce, vous devez vous préparer aux questions d'entrevue de MapReduce 2019. Bien que chaque entretien MapReduce soit différent et que la portée d'un travail soit également différente, nous pouvons vous aider avec les meilleures questions d'entrevue MapReduce avec des réponses, qui vous aideront à franchir le pas et à obtenir votre succès dans votre entretien.

Ces questions sont divisées en deux parties:

Partie 1 - Questions d'entrevue MapReduce (de base)

Cette première partie couvre les questions et réponses d'entrevue MapReduce de base.

1. Qu'est-ce que MapReduce?

Répondre:
MapReduce est un modèle de programmation de données parallèle simple conçu pour l'évolutivité et la tolérance aux pannes. En d'autres termes, c'est un cadre qui traite des problèmes parallélisables dans de grands ensembles de données en utilisant le concept de nœuds (le nombre d'ordinateurs) qui sont à leur tour classés comme des clusters s'il s'agit d'un réseau local et utilise le même matériel ou les mêmes grilles s'ils le sont. géographiquement distribué et utilise un matériel différent. MapReduce comprend essentiellement une fonction Map () et une fonction Reduce (). Il a été lancé par Google et traite de nombreux pétaoctets de données chaque jour. Il a été rendu populaire par le projet open-source Hadoop et est utilisé chez Yahoo, Facebook et Amazon pour n'en nommer que quelques-uns.

2. À quoi sert MapReduce pour une entreprise?

Répondre:
Google
• Construction d'un index pour la recherche Google
Le processus de construction d'un index positionnel ou non positionnel est appelé construction ou indexation d'index. Le rôle de MapReduce est la construction d'index et est conçu pour les grands clusters d'ordinateurs. L'objectif du cluster est de résoudre les problèmes de calcul pour les nœuds ou les ordinateurs qui sont construits avec des pièces standard plutôt qu'un supercalculateur.
• Regroupement d'articles pour Google Actualités
Pour le regroupement d'articles, les pages sont d'abord classées selon qu'elles sont nécessaires pour le regroupement. Les pages contiennent de nombreuses informations qui ne sont pas nécessaires pour le clustering. L'article est ensuite amené à sa forme vectorielle en fonction des mots clés et du poids qui lui est attribué. Ils sont ensuite regroupés à l'aide d'algorithmes.
• Traduction automatique statistique
La traduction des corpus de textes bilingues par analyse génère des modèles statistiques qui traduisent une langue dans une autre à l'aide de pondérations et se réduit à la traduction la plus probable.
Yahoo
• «Carte Web» alimentant Yahoo! Chercher
Similaire au regroupement d'articles pour Google Actualités, MapReduce est utilisé pour regrouper les résultats de recherche sur Yahoo! Plate-forme.
• Détection de spam pour Yahoo! Courrier
Facebook
• Exploration de données
La tendance récente à l'explosion des données a entraîné la nécessité de méthodes sophistiquées pour diviser les données en morceaux qui peuvent être utilisés facilement pour la prochaine étape de l'analyse.
• d Optimisation
• Détection de spam

Passons aux prochaines questions d'entrevue MapReduce.

3. Quels sont les objectifs de conception de MapReduce

Répondre:
Extensibilité à de gros volumes de données
Étant donné que MapReduce est un cadre qui vise à travailler avec des données parallélisables en utilisant le concept de nœuds qui sont le nombre d'ordinateurs sous forme de clusters ou de grilles, il est évolutif à n nombre de machines informatiques. Ainsi, l'un des principaux objectifs de conception de MapReduce est qu'il est évolutif pour des milliers de machines et donc 10 000 de disques.
Rentabilité
Comme MapReduce fonctionne avec la parallélisation des données au niveau des nœuds ou du nombre d'ordinateurs, les raisons suivantes le rendent rentable:
-Machines bon marché au lieu d'un supercalculateur. Bien que bon marché, ils ne sont pas fiables.
-Réseau de commodité
- Tolérance aux pannes automatique, c'est-à-dire qu'il faut moins d'administrateurs
-Il est facile à utiliser, c'est-à-dire qu'il nécessite moins de programmeurs.

4. Quels sont les défis de MapReduce?

Répondre:
Ce sont les questions communes posées lors d'un entretien MapReduce. Les principaux défis de MapReduce sont les suivants:
-Les nœuds bon marché échouent, surtout si vous en avez plusieurs
Le temps moyen entre les pannes pour 1 nœud est égal à 3 ans. Le temps moyen entre les pannes pour 1000 nœuds est égal à 1 jour. La solution consiste à intégrer une tolérance aux pannes au système lui-même.
-Le réseau de commodité est égal ou implique une faible bande passante
La solution pour une faible bande passante est de pousser le calcul vers les données.
-La programmation des systèmes distribués est difficile
La solution à cela est que, selon le modèle de programmation parallèle aux données, les utilisateurs écrivent des fonctions «carte» et «réduire». Le système répartit le travail et gère les défauts.

5. Qu'est-ce que le modèle de programmation MapReduce?

Répondre:
Le modèle de programmation MapReduce est basé sur un concept appelé enregistrements de valeur-clé. Il fournit également des paradigmes pour le traitement parallèle des données. Pour traiter les données dans MapReduce, les données d'entrée et de sortie doivent être mappées au format de plusieurs paires clé-valeur. La paire clé-valeur unique est également appelée enregistrement. Le modèle de programmation MapReduce se compose d'une fonction Map () et d'une fonction Reduce. Le modèle est le suivant.
Fonction Map (): (K in, V in) list (K inter, V inter)
Fonction Réduire (): (K inter, list (V inter)) list (K out, V out)

Partie 2 - Questions d'entrevue MapReduce (avancé)

Jetons maintenant un coup d'œil aux questions d'entrevue avancées de MapReduce.

6. Quels sont les détails d'exécution de MapReduce?

Répondre:
Dans le cas de l'exécution de MapReduce, un seul maître contrôle l'exécution des travaux sur plusieurs esclaves. Les mappeurs sont préférablement placés sur le même nœud ou le même rack que leur bloc d'entrée afin de minimiser l'utilisation du réseau. En outre, les mappeurs enregistrent les sorties sur le disque local avant de les servir aux réducteurs. Cela permet la récupération en cas de panne d'un réducteur et autorise plus de réducteurs que de nœuds.

7. Qu'est-ce qu'un combineur?

Répondre:
Le combineur, également appelé semi-réducteur, fonctionne en acceptant les entrées de la classe Map et en transmettant les paires clé-valeur de sortie à la classe Reducer. La fonction principale d'un combinateur est de résumer les enregistrements de sortie de carte avec la même clé. En d'autres termes, un combineur est une fonction d'agrégation locale pour les clés répétées produites par la même carte. Il fonctionne pour les fonctions associatives comme SUM, COUNT et MAX. Il diminue la taille des données intermédiaires car il s'agit d'un résumé de l'agrégation de valeurs pour toutes les clés répétitives.

Passons aux prochaines questions d'entrevue MapReduce.

8.Pourquoi Pig? Pourquoi pas MapReduce?

Répondre:
• MapReduce permet au programmeur d'effectuer une fonction de carte suivie d'une fonction de réduction, mais travailler sur la façon d'adapter votre traitement de données dans ce modèle, qui nécessite souvent plusieurs étapes MapReduce, peut être un défi.
• Avec Pig, les structures de données sont beaucoup plus riches, car elles sont à valeurs multiples et imbriquées, et l'ensemble des transformations que vous pouvez appliquer aux données est beaucoup plus puissant. Par exemple, ils incluent des jointures qui ne sont pas possibles dans MapReduce.
• De plus, Pig est un programme qui transforme la transformation en une série de travaux MapReduce.

9.CarteRéduire la critique

Répondre:
Une critique importante de MapReduce est que le cycle de développement est très long. Écrire les mappeurs et les réducteurs, compiler et empaqueter le code, soumettre le travail et récupérer les résultats prend beaucoup de temps. Même avec le streaming, qui supprime l'étape de compilation et de package, l'expérience prend toujours beaucoup de temps.

Article recommandé

Ceci a été un guide pour la liste des questions et réponses d'entrevue MapReduce afin que le candidat puisse réprimer facilement ces questions d'entrevue MapReduce. Vous pouvez également consulter les articles suivants pour en savoir plus -

  1. Questions d'entretiens importantes Data Analytics
  2. 10 questions d'entretiens chez Best Design Pattern
  3. Questions d'entretiens chez Elasticsearch
  4. Questions d'entretiens chez Ruby les plus utiles
  5. Fonctionnement de MapReduce