Data enginner

    Entretien d’embauche Data Engineer: 50 Questions à préparer en 2020

    La préparation pour un entretien d’embauche est très importante car elle vous permettra de renvoyer une image professionnelle et compétente au recruteur et c’est ce que les entreprises cherchent réellement: des professionnels compétents. Afin de vous aider à réussir votre entretien, nous vous présentons 50 questions à préparer pour un entretien d’embauche de Data Engineer.

    1. Que signifie l’ingénierie des données pour vous?

    L’ingénierie des données fait référence à métier, connu dans le domaine du Big Data. Elle fait référence à l’architecture et l’infrastructure des données. Elle se focalise sur de la collecte de données et de la recherche dans les données.

    Les données sont générées à partir de plusieurs sources et ne sont que des données brutes. L’ingénierie des données aide à convertir ces données brutes en informations utiles.

    2. Quelles sont les compétences d’un Data Engineer?

    Les compétences d’un Data Engineer se concentrent sur :

    • La bonne connaissance de la modélisation des données
    • La connaissances des outils utilisées dans le Big Data: Hadoop Stack, HDFS, Pig, Hive, etc.)
    • Les langages SQl et python
    • Mathématiques
    • Les outils de la visualisation des données comme Tableau et PowerBI

    3. Expliquez la responsabilité d’un Data Engineer?

    Un Data Engineer a plusieurs responsabilités. Il gère le système source des données et simplifie la structure complexe des données tout en évitant la duplication des données.

    Le Data Engineer fournit souvent des ELT.

    4. Quelle est la différence entre un Data Engineer et un Data Scientist?

    La réponse est détaillé dans cet article: Qu’est-ce qu’un Data Engineer?

    5. Expliquez la modélisation des données

    La modélisation des données est une méthode documentation de la conception logicielle complexe comme un diagramme. Il s’agit d’une représentation conceptuelle des objets de données qui sont associés entre divers objets de données et sous des règles.

    6. Listez les différents de schémas de conception des données dans la modélisation des données

    Il existe deux types de schémas dans la modélisation des données:

    • Le  schéma Start
    • le schéma Snowflake

    7. Quelle est la différence entre les données structurées et non structurées?

    Données structurées:Sont des  inormations (mots, signes, chiffres…) contrôlées par des référentiels et présentées dans une Base de données, qui facilite leur interprétation et traitement par des machines.

    Données non structurées: Sont des données qui ne sont pas organisées d’une manière prédéfinie ou qui ne possèdent pas de modèle de données prédéfini. Elles ne conviennent donc pas à une base de données relationnelle traditionnelle. Elles sont ininterprétables par des machines.

    8. Quels sont les composants d’une application hadoop?

    Une application Hadoop se constitue de:

    • Hadoop Common: Il s’agit d’un ensemble d’utilitaires et de bibliothèques, utilisés par Hadoop.
    • HDFS: Cette application Hadoop se rapporte au système de fichiers dans lequel les données Hadoop sont stockées. Il s’agit d’un système de fichiers distribués ayant une bande passante élevée.
    • Hadoop MapReduce: basée sur un Algorithme pour fournir un traitement de données à grande echelle.
    • Hadoop YARN: utilisé pour la gestion des ressources dans le cluster Hadoop. Il peut être également utilisé pour la planification des tâches des utilisateurs.

    9. Définissez l’élément NameNode?

    NameNode est l’élément central de HDFS. il stocke les données de HDFS et et suit différents fichiers à travers les clusters. Les données ne sont pas stockés dans cet élément, mais plutot dans les DataNodes.

    10. Définissez Hadoop Streaming

    C’est un outils qui permet de créer des cartes, de réduire l’emploi et les envoyer à un cluster spécifique.

    11. Décryptez l’acronyme HDFS

    HDFS =  Hadoop Distributed File System / Système de fichiers distribués Hadoop

    12. Définissez les éléments  Block et Block Scanner dans HDFS

    Les Blocks sont les plus petites unités de données dans un fichier de données. hadoop divise automatiquement Hadoop divise automatiquement les fichiers énormes en petits morceaux.

    Block scanner vérifie la liste des blocks présents dans le DataNode.

     

    13. Que fait le Block Scanner lorsqu’il détecte un bloc de données corrompus?

    Voici les étapes qui se produisent lorsque Block Scanner détécte un bloc de données corrompu :

    Tout d’abord, lorsque Block Scanner trouve un bloc de données corrompu, DataNode rapporte  NameNode

    NameNode commence le processus de création d’une nouvelle “copie” en utilisant une copie du bloc corrompus.

    14. Nommez deux messages que NameNode recoit du DataNode

    • Block report
    • heartbeat

    15. Listez les différents fichiers de configuration XML dans Hadoop ?

    Voici les noms des fichiers de configuration XML dans Hadoop:

    • Mapred-site
    • Core-site
    • HDFS-site
    • Yarn-site

    16. Quelles sont les 4 V de la Big Data?

    • Velocity
    • Variety
    • Volume
    • Veracity

    17. Quelles sont les caractéristiques  d’Hadoop?

    Hadoop est:

    • un framework open-source et libre d’accès
    • compatible avec plusieurs types de  de matériel et facile d’accès pour nouveau équipement au sein d’un nœud spécifique.
    • Hadoop prend en charge le traitement plus rapide des données.
    • stocke les données dans des cluster, indépendamment des autres opérations.
    • permet de créer 3 répliques pour chaque bloc, avec des nœuds différents.

    18. Décryptez abréviation COSHH

    COSHH signifie Classification and Optimization based Schedule for Heterogeneous Hadoop systems.

    19. Comment déployer une solution Big Data?

    1. Voici les étapes à suivre pour déployer une solution Big Data:
    2. Intégrer les données à l’aide de sources de données comme RDBMS, SAP, Mysql, Salesforce
    3. Stocker les données extraites dans la base de données Nosql ou HDFS.
    4. Déployer une solution de Big Data  à l’aide des Frameworks de traitement comme Pig, Spark et Mapreduce.

    20. Expliquez FSCK

    FSCK signifie File System Check, c’est une commande utilisé par HDFS. La commande FSCK est utiliser pour vérifier  les incohérences et les problème dans un fichier.

    21. Expliquez le système de fichiers distribués Hadoop ou Hadoop distributed file system

    Hadoop fonctionne avec des systèmes de fichiers distribués évolutifs comme S3, HFTP FS, FS, et HDFS. le système de fichiers distribués Hadoop est basé sur le système de fichiers Google. Ce système de fichiers est conçu de manière à pouvoir fonctionner facilement sur une grand cluster du système informatique.

    22. Décryptez l’acronyme YARN

    YARN est Yet Another Resource Negotiator.

    23. Quels sont les différents modes dans Hadoop?

    Les modes d’Hadoop sont:

    1. Standalone mode 2
    2. Pseudo distributed mode
    3. Fully distributed mode.

    24. Comment sécuriser Hadoop?

    Sécuriser le canal d’authentification entre le client et le serveur. Fournir un time-stamped au client.

    Le client utilise le time-stamped reçu pour demander à TGS un ticket de service.

    Le client utilise le ticket de service pour une auto-authentification sur un serveur spécifique.

    25. Que signifie heartbeat en Hadoop?

    Dans Hadoop, NameNode et DataNode communiquent entre eux. Heartbeat est le signal envoyé régulièrement , par le DataNode au NameNode pour s’assurer de son présence.

    Data enginner

    26. Quels sont les langages ou éléments les plus utilisées par un Data Engineer?

    • Probabilités et Algèbre linéaire
    • Machine Learning
    • Analyse des tendances et régression
    • Hive QL et SQL Databases

    27. Que signifie Big Data?

    C’est un grand ensemble de données structurées et non structurées,  qui ne peuvent pas être traitées facilement par les méthodes traditionnelles de stockage des données. Les Data Engineers utilisent Hadoop pour gérer le Big Data.

    28. Que signifie FIFO scheduling ou la planification FIFO ?

    Il s’agit d’un algorithme de planification des tâches Hadoop. Dans cette planification FIFO, une  sélection des tâches est faite à partir d’une file d’attente et la plus ancienne tâche est en premier.

    Quels sont les numéros de ports par defaut de task tracker, NameNode, et  job tracker d’Hadoop?

    • Task tracker: Port 50060
    • NameNode : Port 50070
    • Job Tracker: Port 50030

    29. Comment désactiver Block Scanner dans le DataNode de HDFS?

    Pour désactiver Block Scanner dans le DataNode de HDFS, paramètrez dfs.datanode.scan.period.hours à 0.

    30. Comment définir la distance entre deux nœuds dans Hadoop?

    La distance est égale à la somme de la distance aux nœuds les plus proches. La méthode getDistance() est utilisé pour calculer la distance entre deux nœuds.

    31. Pourquoi utiliser du matériel de base dans Hadoop?

    Matériel de base est facile à obtenir et abordable. C’est un système qui est compatible avec Windows, MS-DOS, ou Linux.

    32. Définissez le facteur de réplication dans HDFS

    Le facteur de réplication est un nombre total de répliques d’un fichier dans le système.

    33. Quelle données sont stockées dans le NameNode?

    Le NameNode stocke les metadatas du HDFS comme l’information sur le block et l’information d’espace de noms.

    34. Que signifie Rack Awarness?

    dans les Cluster Hadoop, NameNode utilise le DataNode pour pour améliorer le trafic réseau lors de la lecture ou l’écriture de tout fichier qui est le plus proche du rack à la demande de lecture ou d’écriture. Namenode maintient l’id du rack de chaque DataNode pour obtenir des informations de rack. Ce concept est appelé Rack Awareness dans Hadoop.

    35. Quelles sont les phases du reducer en hadoop?

    le reducer d’Hadoop passe par 3 étapes:

    • Shuffle: où le reducer copie la sortie de Mapper.
    • Sort: Hadoop trie l’entrée dans Reducer en utilisant la même clé.
    • Reduce: Dans cette phase, les valeurs de sortie associées à une clé sont réduites pour consolider les données dans la sortie finale.

    36. Pourquoi Hadoop utilise Context object?

    Hadoop utilise Context object avec Mapper pour interagir avec le système restant.Context object récupère les détails de configuration du système et le travail dans son constructeur.

    On utilise Context object pour faire passer dans les méthodes setup(), cleanup() et map().Cet objet rend les informations vitales disponibles pendant les opérations de cartographie.

    37. Que signifie Data Locality dans Hadoop?

    Dans les systemes Big data, la taille des données est énorme, c’est pourquoi il n’est pas logique de de déplacer les données dans l’ensemble du réseau. De ce fait, Hadoop tente de rapprocher le calcul des données et c’est pourquoi les données restent locales de l’emplacement stocké.

    38. Définissez l’élément Balancer de HDFS

    En HDFS, le balancer est un outil administratif utilisé pour rééquilibrer les données dans l’ensemble des nœuds de données et déplacer les blocs des nœuds sur-utilisés aux nœuds sous-utilisés.

    39. Que signifie Safe mode dans HDFS?

    C’est un mode de lecture seulement pour un NameNode d’un cluster. Initialement, NameNode est un safe mode.

    40. A quoi sert Metastore dans Hive?

    Il stocke le schéma ainsi que l’emplacement de la table Hive.

    La table Hive définit la mappe et les métadonnées qui sont stockées dans Metastore. Cela peut être stocké dans RDBMS pris en charge par JPOX.

    41. A quoi sert SerDe en Hive?

    Serde est un nom court pour Serializer ou Deserializer. Dans Hive, Serde permet de lire des données de table  et d’écrire dans un champ spécifique dans n’importe quel format .

    42. Listez les composants disponibles du modèle de données dans Hive

    Voici les composants du  modèle de données dans Hive:

    • Tables
    • Partitions
    • Buckets

    43. Expliquez l’utilisation de Hive dans l’eco-system d’Hadoop

    Hive fournit une interface pour gérer les données stockées dans l’éco-système Hadoop. il  est utilisé pour la cartographie et le travail avec les tables de Hbase.

    Les requêtes Hive sont converties en tâches Mapreduce afin de masquer la complexité associée à la création et à l’exécution des tâches Mapreduce.

    44. Listez les différents types de données complexes, supportés par hive.

    Hive supporte:

    • Map
    • Struct
    • Array
    • Union

    45. Expliquez comment est utilisé le fichier  .hiverc dans Hive

    Dans Hive, .hiverc  est le fichier d’initialisation.Ce fichier est  chargé dès que nous démarrons l’interface de ligne de commande (CLI) pour Hive. Nous pouvons définir les valeurs initiales des paramètres dans le fichier .hiverc.

    46. Est-il possible de créer plus d’une table dans Hive pour un seul fichier de données ?

    oui, nous pouvons créer plus d’une table dans Hive pour un seul fichier de données. Hive enregistre le schéma dans Hive Metastore. Basé sur ce schéma, nous pouvons récupérer des différents résultats  à partir des mêmes données.

    47. Expliquez les différentes implémentations SerDe disponibles dans Hive

    Il existe de nombreuses implémentations Serde disponibles dans Hive. Vous pouvez également écrire votre propre implémentation Serde personnalisée.

    Voici quelques implémentations Serde :

    • OpenCSVSerde
    • RegexSerDe
    • DelimitedJSONSerDe
    • ByteStreamTypedSerDe

    48. Listez des fonctions de génération de table disponibles dans Hive

    Voici une liste des fonctions de génération de table:

    • Explode(array)
    • JSON_tuple()
    • Stack()
    • Explode(map)

    49. Comment visualiser la structure d’une base de données MySQL?

    Pour visualiser la structure d’une base de données MySQL, vous pouvez utiliser la commande DESCRIBE: la syntaxe est : DESCRIBE Table name;.

    50. Comment rechercher une chaîne spécifique dans une seule colonne de table Mysql?

    Nous pouvons définir différents types d’expression régulière et rechercher l’utilisation de regex.

    51. Expliquez comment l’analyse des données et Big Data peuvent augmenter les revenues d’une entreprise

    Voici comment l’analyse des données et Bid peuvent augmenter les revenus de l’entreprise :

    • Utilisez les données efficacement pour assurer la croissance de l’entreprise.
    •  Accroître la valeur pour les clients.
    • Faire des analyses pour améliorer les prévisions des niveaux de dotation.
    • Réduire les coûts de production des organisations.

     

    A lire aussi:

    >