Introduction à Hive Questions et réponses d'entrevue

Dans la nouvelle ère des données, Hive est un ensemble d'outils d'infrastructure ETL et d'infrastructure d'entreposage de données open source à l'échelle du pétaoctet pour stocker des données structurées et non structurées basées sur le système de fichiers distribués (HDFS)
pour analyser, interroger et extraire d'énormes volumes de données en activant un langage de type SQL appelé HiveQL (HQL) et une exécution facile des requêtes en planifiant Hadoop MapReduce.

Hive est construit sur Hadoop pour traiter et analyser les Big Data et facilite les requêtes.
La ruche a été initialement créée par Facebook, puis elle a été encore améliorée et développée en tant que source ouverte par Apache Software Foundation et l'a nommée Apache Hive. De nombreuses entreprises utilisent désormais Apache Hive pour leurs solutions Big Data.

Si vous recherchez un emploi lié à Hive, vous devez vous préparer pour les questions d'entrevue Hive 2018. Bien que chaque entretien soit différent et que la portée d'un travail soit également différente, nous pouvons vous aider avec les meilleures questions et réponses d'entrevue Hive 2018, qui vous aideront à franchir le pas et à réussir votre entrevue.

Vous trouverez ci-dessous la liste des questions les plus fréquemment posées lors d'un entretien avec Hive. Ces questions sont divisées en deux parties:

Partie 1 - Questions d'entrevue sur la ruche (élémentaire)

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

1. Énumérer les différents composants de l'architecture Hive?

Répondre:
L'architecture Hive comprend cinq composants principaux:
• Interface utilisateur (UI): il agit comme un communicateur entre les utilisateurs et les pilotes lorsque l'utilisateur écrit les requêtes, l'interface utilisateur l'accepte et l'exécute sur le pilote, il existe deux types d'interface disponibles: la ligne de commande et l'interface GUI.
• Pilote: il maintient le cycle de vie de la requête HiveQL. Il reçoit les requêtes de l'interface utilisateur et crée la session pour traiter la requête.
• Compilateur: il reçoit les plans de requête du pilote et obtient les informations requises de Metastore afin d'exécuter le plan.
• Metastore: il stocke les informations sur les données comme une table; il peut s'agir d'une table interne ou externe. Il envoie les informations de métadonnées au compilateur pour exécuter la requête.
• Execute Engine: le service Hive exécutera le résultat dans le moteur d'exécution; il exécute la requête dans MapReduce pour traiter les données. Il est responsable du contrôle de chaque étape pour tous ces composants.

2. Quels sont les différents types de modes que Hive peut utiliser?

Répondre:
Ce sont les questions courantes posées lors d'un entretien avec Hive. Hive peut fonctionner sur deux modes en fonction de la taille des données,
Ces modes sont:
• Mode de réduction de carte
•Mode local

3. Quels sont les scénarios dans lesquels Hive peut être utilisé et ne peut pas être utilisé?

Réponse :
Lorsque vous créez des applications d'entrepôt de données lorsque vos données sont statiques lorsque votre application n'a pas besoin d'un temps de réponse élevé, lorsque le volume de données est énorme, lorsque les données ne changent pas rapidement et lorsque vous utilisez des requêtes plutôt que des scripts. Hive ne prend en charge que les transactions OLAP, il ne convient pas aux transactions OLTP.

Passons aux prochaines questions d'entrevue Hive.

4. Quels sont les formats de fichiers pris en charge par Hive? Énumérez le type d'applications prises en charge par HIVE?

Répondre:
Par défaut, Hive prend en charge le format de fichier texte et il prend également en charge le format de fichier binaire tel que le fichier de séquence, les fichiers ORC, les fichiers de parquet, les fichiers de données Avro.
• Fichier de séquence: il s'agit généralement d'un fichier au format binaire, qui peut être compressé et est divisible.
• Fichier ORC: le fichier colonne de ligne optimisé est un fichier à base de colonne enregistré et un fichier de stockage orienté colonne.
• Fichier Parquet: il s'agit d'un fichier binaire orienté colonne, il est très efficace pour les requêtes à grande échelle.
• Fichier de données Avro: il est identique au format de fichier de séquence qui est un fichier fractionnable, compressible et orienté ligne.
La taille maximale du type de données de chaîne autorisée dans Hive est de 2 Go.

Hive est un framework d'entrepôt de données adapté aux applications écrites en Java, C ++, PHP, Python ou Ruby.

5. Quels sont les différents types de tables disponibles dans Hive?

Répondre:
Il existe deux types de table dans l'application Hive:
• Tables gérées: les données et le schéma contrôlent Hive.
• Tables externes: seul le schéma contrôle la ruche.

Partie 2 - Questions d'entrevue sur la ruche (avancé)

Jetons maintenant un coup d'œil aux questions d'entrevue avancées sur la ruche.

6. Qu'est-ce qu'un Metastore dans Hive? Énumérer et expliquer les différents types de configuration de Hast Metastores?

Répondre:
Metastore dans Hive est utilisé pour stocker les informations de métadonnées, c'est un référentiel central dans Hive. Il permet de stocker les informations de métadonnées dans une base de données externe. Par défaut, Hive stocke les informations de métadonnées dans la base de données Derby, mais elles peuvent également être stockées dans d'autres bases de données telles qu'Oracle, MySql, etc.
Il existe trois types de configuration Metastore:
• Métastore intégré: c'est un mode par défaut; il peut accéder localement à la bibliothèque Hive, toutes les opérations en ligne de commande se font en mode embarqué. Le service Hive, le service de métastore et la base de données s'exécutent dans la même machine virtuelle Java.
• Métastore local: il stocke les données dans une base de données externe telle que MySql ou Oracle. Le service Hive et le service de métastore s'exécutent dans la même machine virtuelle Java, il se connecte à la base de données qui s'exécute dans une machine virtuelle Java distincte.
• Métastore distant: il utilise le mode distant pour exécuter des requêtes, ici le service de métastore et le service de ruche s'exécutent dans une JVM distincte. Vous pouvez avoir plusieurs serveurs de métastore pour augmenter la disponibilité.

7. Qu'est-ce qu'un processeur de requêtes Hive? Quels sont les différents composants du processeur de requêtes Hive?

Répondre:
Ce sont les questions d'entrevue les plus fréquemment posées dans une interview. Hive Query Processor est utilisé pour convertir SQL en travaux MapReduce. En fonction de l'ordre des dépendances, les travaux sont exécutés.
Les composants de Hive Query Processor sont répertoriés ci-dessous:
• Analyseur sémantique
• UDF et UDAF
• Optimiseur
•Opérateur
• Analyseur
• Moteur d'exécution
• Vérification de type
• Génération de plan logique
• Génération de plans physiques

8. Quelle est la fonctionnalité d'Object-Inspector dans Hive?

Répondre:
Il est composé de Hive qui est utilisé pour identifier la structure des colonnes individuelles et la structure interne des objets de ligne. Les objets complexes qui sont stockés dans plusieurs formats sont accessibles à l'aide de l'inspecteur d'objets dans Hive.
Object-Inspector identifiera la structure d'un objet et les moyens d'accéder aux champs internes à l'intérieur de l'objet.

Passons aux prochaines questions d'entrevue Hive.

9. Quelles sont les différentes façons de connecter les applications à Hive Server?

Répondre:
Il existe trois façons de connecter les applications au serveur Hive:
• Thrift Client: il est utilisé pour exécuter toutes les commandes de ruche en utilisant un langage de programmation différent tel que Java, C ++, PHP, Python ou Ruby.
• Pilote ODBC: il prendra en charge le protocole ODBC
• Pilote JDBC: il prendra en charge le protocole JDBC

10. Quelles sont les classes de lecture et d'écriture par défaut dans Hive?

Répondre:
Voici les classes de lecture et d'écriture disponibles dans Hive:
• TextInputFormat - Cette classe est utilisée pour lire les données au format texte brut.
• HiveIgnoreKeyTextOutputFormat - Cette classe est utilisée pour écrire des données au format texte brut.
• SequenceFileInputFormat - Cette classe est utilisée pour lire les données au format de fichier Hadoop Sequence.
• SequenceFileOutputFormat - Cette classe est utilisée pour écrire des données au format de fichier Hadoop Sequence.

Article recommandé

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

  1. Top 5 des questions et réponses utiles pour les entretiens DBA
  2. 12 questions et réponses d'entrevue les plus impressionnantes de GitHub
  3. 15 questions et réponses d'entrevue Ruby les plus importantes
  4. Top 10 des questions d'entrevue les plus utiles de HBase