Télécharger le PDF
Voici les questions fréquemment posées lors des entretiens pour les nouveaux développeurs ainsi que pour les développeurs expérimentés.
1) Qu'est-ce que Hadoop Map Reduce?
Pour traiter de grands ensembles de données en parallèle sur un cluster Hadoop, le framework Hadoop MapReduce est utilisé. L'analyse des données utilise une carte en deux étapes et réduit le processus.
2) Comment fonctionne Hadoop MapReduce?
Dans MapReduce, pendant la phase de carte, il compte les mots dans chaque document, tandis que dans la phase de réduction, il agrège les données selon le document couvrant toute la collection. Au cours de la phase de carte, les données d'entrée sont divisées en divisions pour analyse par des tâches de carte s'exécutant en parallèle dans le cadre Hadoop.
3) Expliquez ce qu'est la lecture aléatoire dans MapReduce?
Le processus par lequel le système effectue le tri et transfère les sorties de la carte au réducteur en tant qu'entrées est connu sous le nom de mélange.
4) Expliquez ce qu'est le cache distribué dans MapReduce Framework?
Le cache distribué est une fonctionnalité importante fournie par le framework MapReduce. Lorsque vous souhaitez partager certains fichiers sur tous les nœuds dans Hadoop Cluster, le cache distribué est utilisé. Les fichiers peuvent être un fichier jar exécutable ou un simple fichier de propriétés.
5) Expliquez ce qu'est NameNode dans Hadoop?
NameNode dans Hadoop est le nœud, où Hadoop stocke toutes les informations d'emplacement de fichier dans HDFS (Hadoop Distributed File System). En d'autres termes, NameNode est la pièce maîtresse d'un système de fichiers HDFS. Il conserve l'enregistrement de tous les fichiers du système de fichiers et suit les données des fichiers sur le cluster ou sur plusieurs machines
6) Expliquez ce qu'est JobTracker dans Hadoop? Quelles sont les actions suivies par Hadoop?
Dans Hadoop pour la soumission et le suivi des travaux MapReduce, JobTracker est utilisé. Job Tracker s'exécute sur son propre processus JVM
Job Tracker effectue les actions suivantes dans Hadoop
- L'application cliente soumet les travaux au suivi des travaux
- JobTracker communique avec le mode Nom pour déterminer l'emplacement des données
- Près des données ou avec des emplacements disponibles JobTracker localise les nœuds TaskTracker
- Sur les nœuds TaskTracker choisis, il soumet le travail
- Lorsqu'une tâche échoue, Job Tracker le notifie et décide quoi faire ensuite.
- Les nœuds TaskTracker sont surveillés par JobTracker
7) Expliquez ce qu'est le battement de cœur dans HDFS?
Heartbeat fait référence à un signal utilisé entre un nœud de données et un nœud de nom, et entre le suivi des tâches et le suivi des travaux, si le nœud de nom ou le suivi des travaux ne répond pas au signal, il est considéré qu'il y a des problèmes avec le nœud de données ou la tâche. traqueur
8) Expliquez ce que sont les combineurs et quand utiliser un combineur dans un Job MapReduce?
Pour augmenter l'efficacité du programme MapReduce, des combinateurs sont utilisés. La quantité de données peut être réduite à l'aide de combinateurs qui doivent être transférés vers les réducteurs. Si l'opération effectuée est commutative et associative, vous pouvez utiliser votre code réducteur comme un combineur. L'exécution du combiner n'est pas garantie dans Hadoop
9) Que se passe-t-il lorsqu'un nœud de données tombe en panne?
Lorsqu'un nœud de données échoue
- Jobtracker et namenode détectent l'échec
- Sur le nœud défaillant, toutes les tâches sont reprogrammées
- Namenode réplique les données de l'utilisateur sur un autre nœud
10) Expliquez ce qu'est l'exécution spéculative?
Dans Hadoop lors de l'exécution spéculative, un certain nombre de tâches dupliquées sont lancées. Sur un nœud esclave différent, plusieurs copies de la même tâche de mappage ou de réduction peuvent être exécutées à l'aide de l'exécution spéculative. En termes simples, si un lecteur particulier prend beaucoup de temps pour terminer une tâche, Hadoop créera une tâche en double sur un autre disque. Un disque qui termine la tâche en premier est conservé et les disques qui ne se terminent pas en premier sont supprimés.
11) Expliquez quels sont les paramètres de base d'un mappeur?
Les paramètres de base d'un mappeur sont
- Longue écriture et texte
- Texte et IntWritable
12) Expliquez quelle est la fonction du partitionneur MapReduce?
La fonction du partitionneur MapReduce est de s'assurer que toute la valeur d'une seule clé va au même réducteur, ce qui permet finalement une distribution uniforme de la sortie de la carte sur les réducteurs.
13) Expliquez quelle est la différence entre un bloc d'entrée et un bloc HDFS?
La division logique des données est connue sous le nom de Split tandis qu'une division physique des données est connue sous le nom de bloc HDFS.
14) Expliquez ce qui se passe au format texte?
Au format de saisie de texte, chaque ligne du fichier texte est un enregistrement. Value est le contenu de la ligne tandis que Key est le décalage d'octet de la ligne. Par exemple, Key: longWritable, Value: text
15) Mentionnez quels sont les principaux paramètres de configuration que l'utilisateur doit spécifier pour exécuter MapReduce Job?
L'utilisateur du framework MapReduce doit spécifier
- Emplacements d'entrée du travail dans le système de fichiers distribué
- Emplacement de sortie du travail dans le système de fichiers distribué
- Format d'entrée
- Format de sortie
- Classe contenant la fonction de carte
- Classe contenant la fonction de réduction
- Fichier JAR contenant les classes du mappeur, du réducteur et du pilote
16) Expliquez ce qu'est WebDAV dans Hadoop?
Pour prendre en charge l'édition et la mise à jour des fichiers, WebDAV est un ensemble d'extensions HTTP. Sur la plupart des systèmes d'exploitation, les partages WebDAV peuvent être montés en tant que systèmes de fichiers, il est donc possible d'accéder à HDFS en tant que système de fichiers standard en exposant HDFS sur WebDAV.
17) Expliquez ce qu'est Sqoop dans Hadoop?
Pour transférer les données entre la gestion de base de données relationnelle (SGBDR) et Hadoop HDFS, un outil est utilisé appelé Sqoop. L'utilisation de données Sqoop peut être transférée depuis un RDMS comme MySQL ou Oracle vers HDFS ainsi que l'exportation de données d'un fichier HDFS vers un SGBDR
18) Expliquez comment JobTracker planifie une tâche?
Le tracker de tâches envoie des messages de pulsation à Jobtracker généralement toutes les quelques minutes pour s'assurer que JobTracker est actif et fonctionne. Le message informe également JobTracker du nombre d'emplacements disponibles, afin que JobTracker puisse rester à jour avec où le travail du cluster peut être délégué.
19) Expliquez ce qu'est Sequencefileinputformat?
Sequencefileinputformat est utilisé pour lire les fichiers dans l'ordre. Il s'agit d'un format de fichier binaire compressé spécifique qui est optimisé pour transmettre des données entre la sortie d'un travail MapReduce et l'entrée d'un autre travail MapReduce.
20) Expliquez à quoi sert la classe conf.setMapper?
Conf.setMapperclass définit la classe du mappeur et tous les éléments liés au travail de carte, tels que la lecture de données et la génération d'une paire clé-valeur à partir du mappeur
21) Expliquez ce qu'est Hadoop?
Il s'agit d'un cadre logiciel open source pour stocker des données et exécuter des applications sur des grappes de matériel de base. Il fournit une puissance de traitement énorme et un stockage massif pour tout type de données.
22) Mentionner quelle est la différence entre un SGBDR et Hadoop?
SGBDR | Hadoop |
Le SGBDR est un système de gestion de base de données relationnelle | Hadoop est une structure plate basée sur des nœuds |
Il a utilisé pour le traitement OLTP alors que Hadoop | Il est actuellement utilisé pour le traitement analytique et BIG DATA |
Dans le SGBDR, le cluster de base de données utilise les mêmes fichiers de données stockés dans un stockage partagé | Dans Hadoop, les données de stockage peuvent être stockées indépendamment dans chaque nœud de traitement. |
Vous devez prétraiter les données avant de les stocker | vous n'avez pas besoin de prétraiter les données avant de les stocker |
23) Mentionner les composants principaux de Hadoop?
Les composants principaux de Hadoop comprennent,
- HDFS
- MapReduce
24) Qu'est-ce que NameNode dans Hadoop?
NameNode dans Hadoop est l'endroit où Hadoop stocke toutes les informations d'emplacement de fichier dans HDFS. Il s'agit du nœud maître sur lequel s'exécute le suivi des travaux et se compose de métadonnées.
25) Mentionner quels sont les composants de données utilisés par Hadoop?
Les composants de données utilisés par Hadoop sont
- Cochon
- Ruche
26) Mentionner quel est le composant de stockage de données utilisé par Hadoop?
Le composant de stockage de données utilisé par Hadoop est HBase.
27) Mentionner quels sont les formats d'entrée les plus courants définis dans Hadoop?
Les formats d'entrée les plus courants définis dans Hadoop sont;
- TextInputFormat
- KeyValueInputFormat
- SequenceFileInputFormat
28) Dans Hadoop, qu'est-ce que InputSplit?
Il divise les fichiers d'entrée en morceaux et attribue chaque division à un mappeur pour le traitement.
29) Pour un travail Hadoop, comment allez-vous écrire un partitionneur personnalisé?
Vous écrivez un partitionneur personnalisé pour un travail Hadoop, vous suivez le chemin suivant
- Créer une nouvelle classe qui étend la classe de partitionneur
- Remplacer la méthode getPartition
- Dans le wrapper qui exécute le MapReduce
- Ajoutez le partitionneur personnalisé au travail à l'aide de la méthode Set Partitioner Class ou - ajoutez le partitionneur personnalisé au travail en tant que fichier de configuration
30) Pour un travail dans Hadoop, est-il possible de changer le nombre de mappeurs à créer?
Non, il n'est pas possible de modifier le nombre de mappeurs à créer. Le nombre de mappeurs est déterminé par le nombre de divisions d'entrée.
31) Expliquez ce qu'est un fichier de séquence dans Hadoop?
Pour stocker des paires clé / valeur binaires, un fichier de séquence est utilisé. Contrairement au fichier compressé ordinaire, le fichier de séquence prend en charge le fractionnement même lorsque les données à l'intérieur du fichier sont compressées.
32) Lorsque Namenode est en panne, qu'arrive-t-il à Job Tracker?
Namenode est le point de défaillance unique dans HDFS.Ainsi, lorsque Namenode est en panne, votre cluster se déclenche.
33) Expliquez comment se fait l'indexation dans HDFS?
Hadoop a une manière unique d'indexer. Une fois que les données sont stockées selon la taille du bloc, le HDFS continuera à stocker la dernière partie des données qui indiquent où la partie suivante des données sera.
34) Expliquez est-il possible de rechercher des fichiers à l'aide de caractères génériques?
Oui, il est possible de rechercher des fichiers à l'aide de caractères génériques.
35) Liste des trois fichiers de configuration de Hadoop?
Les trois fichiers de configuration sont
- core-site.xml
- mapred-site.xml
- hdfs-site.xml
36) Expliquez comment pouvez-vous vérifier si Namenode fonctionne à côté de l'utilisation de la commande jps?
En plus d'utiliser la commande jps, pour vérifier si Namenode fonctionne, vous pouvez également utiliser
/etc/init.d/hadoop-0.20-namenode status.
37) Expliquez ce qu'est «map» et qu'est-ce que «reducer» dans Hadoop?
Dans Hadoop, une carte est une phase de résolution de requêtes HDFS. Une carte lit les données à partir d'un emplacement d'entrée et génère une paire clé / valeur en fonction du type d'entrée.
Dans Hadoop, un réducteur collecte la sortie générée par le mappeur, la traite et crée sa propre sortie finale.
38) Dans Hadoop, quel fichier contrôle le reporting dans Hadoop?
Dans Hadoop, le fichier hadoop-metrics.properties contrôle les rapports.
39) Pour utiliser Hadoop, listez les exigences réseau?
Pour utiliser Hadoop, la liste des exigences réseau est:
- Connexion SSH sans mot de passe
- Secure Shell (SSH) pour le lancement des processus serveur
40) Mentionner qu'est-ce que la sensibilisation au rack?
La reconnaissance du rack est la manière dont le namenode détermine comment placer les blocs en fonction des définitions de rack.
41) Expliquez ce qu'est un suivi des tâches dans Hadoop?
Un Task Tracker dans Hadoop est un démon de nœud esclave dans le cluster qui accepte les tâches d'un JobTracker. Il envoie également les messages de pulsation au JobTracker, toutes les quelques minutes, pour confirmer que le JobTracker est toujours actif.
42) Mentionner quels démons s'exécutent sur un nœud maître et des nœuds esclaves?
- Les démons exécutés sur le nœud maître sont "NameNode"
- Les démons exécutés sur chaque nœud esclave sont «Task Tracker» et «Data»
43) Expliquez comment déboguer le code Hadoop?
Les méthodes courantes de débogage du code Hadoop sont:
- En utilisant l'interface Web fournie par le framework Hadoop
- En utilisant des compteurs
44) Expliquez ce que sont les nœuds de stockage et de calcul?
- Le nœud de stockage est la machine ou l'ordinateur sur lequel réside votre système de fichiers pour stocker les données de traitement
- Le nœud de calcul est l'ordinateur ou la machine sur lequel votre logique métier réelle sera exécutée.
45) Mentionner à quoi sert l'objet de contexte?
L'objet de contexte permet au mappeur d'interagir avec le reste de Hadoop
système. Il comprend des données de configuration pour le travail, ainsi que des interfaces qui lui permettent d'émettre une sortie.
46) Mentionnez quelle est la prochaine étape après Mapper ou MapTask?
L'étape suivante après Mapper ou MapTask est que la sortie du Mapper est triée et des partitions seront créées pour la sortie.
47) Mentionnez quel est le nombre de partitionneurs par défaut dans Hadoop?
Dans Hadoop, le partitionneur par défaut est un partitionneur «Hash».
48) Expliquez à quoi sert RecordReader dans Hadoop?
Dans Hadoop, le RecordReader charge les données à partir de sa source et les convertit en paires (clé, valeur) adaptées à la lecture par le mappeur.
49) Expliquez comment les données sont partitionnées avant d'être envoyées au réducteur si aucun partitionneur personnalisé n'est défini dans Hadoop?
Si aucun partitionneur personnalisé n'est défini dans Hadoop, un partitionneur par défaut calcule une valeur de hachage pour la clé et affecte la partition en fonction du résultat.
50) Expliquez ce qui se passe lorsque Hadoop a engendré 50 tâches pour un travail et qu'une des tâches a échoué?
Il redémarrera la tâche sur un autre TaskTracker si la tâche échoue plus que la limite définie.
51) Mentionner quelle est la meilleure façon de copier des fichiers entre des clusters HDFS?
La meilleure façon de copier des fichiers entre des clusters HDFS consiste à utiliser plusieurs nœuds et la commande distcp, de sorte que la charge de travail soit partagée.
52) Mentionner quelle est la différence entre HDFS et NAS?
Les blocs de données HDFS sont répartis sur les disques locaux de toutes les machines d'un cluster tandis que les données NAS sont stockées sur du matériel dédié.
53) Mentionner en quoi Hadoop est différent des autres outils de traitement de données?
Dans Hadoop, vous pouvez augmenter ou diminuer le nombre de mappeurs sans vous soucier du volume de données à traiter.
54) Mentionnez quel travail fait la classe conf?
La classe de configuration des tâches sépare les différentes tâches exécutées sur le même cluster. Il effectue les réglages au niveau du travail tels que la déclaration d'un travail dans un environnement réel.
55) Mentionner en quoi consiste le contrat des API Hadoop MapReduce pour une classe de clé et de valeur?
Pour une classe de clé et de valeur, il existe deux contrats d'API Hadoop MapReduce
- La valeur doit définir l'interface org.apache.hadoop.io.Writable
- La clé doit définir l'interface org.apache.hadoop.io.WritableComparable
56) Mentionner quels sont les trois modes dans lesquels Hadoop peut être exécuté?
Les trois modes dans lesquels Hadoop peut être exécuté sont
- Mode pseudo distribué
- Mode autonome (local)
- Mode entièrement distribué
57) Mentionnez à quoi sert le format de saisie de texte?
Le format d'entrée de texte créera un objet ligne qui est un nombre hexadécimal. La valeur est considérée comme un texte de ligne entière tandis que la clé est considérée comme un objet de ligne. Le mappeur recevra la valeur en tant que paramètre «texte» tandis que la clé en tant que paramètre «inscriptible à long».
58) Mentionner combien d'InputSplits sont créés par un Framework Hadoop?
Hadoop fera 5 scissions
- 1 fractionnement pour 64K fichiers
- 2 divisé pour les fichiers de 65 Mo
- 2 divisions pour les fichiers de 127 Mo
59) Mentionner ce qu'est le cache distribué dans Hadoop?
Le cache distribué dans Hadoop est une fonctionnalité fournie par le framework MapReduce. Au moment de l'exécution du travail, il est utilisé pour mettre en cache le fichier. Le Framework copie les fichiers nécessaires sur le nœud esclave avant l'exécution de toute tâche sur ce nœud.
60) Expliquez comment Hadoop Classpath joue un rôle vital dans l'arrêt ou le démarrage des démons Hadoop?
Classpath sera constitué d'une liste de répertoires contenant des fichiers jar pour arrêter ou démarrer les démons.