Top 52 des questions et réponses d'entretien avec Apache Spark (2025)
Questions d'entretien Spark pour les débutants et les expérimentés
Voici les questions et réponses d'entretien avec Apache Spark pour les candidats débutants et expérimentés en science des données pour obtenir l'emploi de leurs rêves.
1) Qu'est-ce qu'Apache Spark ?
Apache Spark est un cadre de traitement de données facile à utiliser et flexible. Spark peut tourner Hadoop, autonome ou dans le cloud. Il est capable d'évaluer diverses sources de données, notamment HDFS, Cassandra et autres.
Téléchargement gratuit du PDF : Questions et réponses d'entretien avec Apache Spark
2) Expliquez Dsstream en référence à Apache Spark
Dstream est une séquence de bases de données distribuées résilientes qui représentent un flux de données. Vous pouvez créer Dstream à partir de diverses sources comme HDFS, Apache Flume, Apache Kafka, etc.
3) Nommez trois sources de données disponibles dans SparkSQL
Les sources de données disponibles dans SparkSQL sont :
4) Nommez quelques démons internes utilisés dans Spark ?
Les démons importants utilisés dans Spark sont Blockmanager, Memestore, DAGscheduler, Driver, Worker, Executor, Tasks, etc.
5) Définissez le terme « vecteur clairsemé ».
Le vecteur clairsemé est un vecteur qui comporte deux tableaux parallèles, un pour les indices, un pour les valeurs, utilisé pour stocker des entités non nulles afin d'économiser de l'espace.
6) Nommez le langage pris en charge par Apache Spark pour développer des applications Big Data
Les langages importants utilisés pour le développement d'applications Big Data sont :
- Java
- Python
- R
- Clojure
- Scala
7) Quelle est la méthode pour créer une trame de données ?
Dans Apache Spark, un bloc de données peut être créé à l'aide de tables dans Hive et de fichiers de données structurées.
8) Expliquez le schémaRDD
Un RDD composé d'un objet ligne avec des informations de schéma sur le type de données dans chaque colonne est appelé SchemaRDD.
9) Que sont les accumulateurs ?
Les accumulateurs sont les variables en écriture seule. Ils sont initialisés une seule fois et envoyés aux travailleurs. Ces travailleurs seront mis à jour en fonction de la logique écrite, qui sera renvoyée au pilote.
10) Quels sont les composants de Spark Ecosystem ?
Les composants importants de Spark sont :
- Noyau d'étincelle : Il s'agit d'un moteur de base pour le traitement de données parallèles et distribués à grande échelle.
- Diffusion Spark : Ce composant est utilisé pour le streaming de données en temps réel.
- Spark SQL: Intègre le traitement relationnel à l'aide de l'API de programmation fonctionnelle de Spark
- GraphX : Permet des graphiques et des calculs parallèles
- MLlib : Vous permet d'effectuer un apprentissage automatique dans Apache Spark
11) Nommez trois fonctionnalités de l'utilisation d'Apache Spark
Les trois fonctionnalités les plus importantes de l’utilisation d’Apache Spark sont :
- Prise en charge des analyses sophistiquées
- Vous aide à intégrer Hadoop et les données Hadoop existantes
- Il permet d'exécuter une application dans un cluster Hadoop, jusqu'à 100 fois plus rapide en mémoire et dix fois plus rapide sur disque.
12) Expliquer le niveau de parallélisme par défaut dans Apache Spark
Si l'utilisateur n'est pas en mesure de le spécifier, le nombre de partitions est considéré comme le niveau de parallélisme par défaut dans Apache Spark.
13) Nommez trois sociétés qui utilisent les services Spark Streaming
Trois sociétés connues utilisant les services Spark Streaming sont :
- Uber
- Netflix
14) Qu'est-ce que Spark SQL ?
Spark SQL est un module de traitement de données structurées où nous profitons des requêtes SQL exécutées sur cette base de données.
15) Expliquer le dossier Parquet
Paraquet est un fichier au format colonne pris en charge par de nombreux autres systèmes de traitement de données. Spark SQL vous permet d'effectuer des opérations de lecture et d'écriture avec le fichier Parquet.
16) Expliquez le pilote Spark ?
Spark Driver est le programme qui s'exécute sur le nœud maître de la machine et déclare les transformations et les actions sur les RDD de données.
17) Comment pouvez-vous stocker les données dans Spark ?
Spark est un moteur de traitement qui ne possède aucun moteur de stockage. Il peut récupérer des données depuis un autre moteur de stockage comme HDFS, S3.
18) Expliquer l'utilisation de l'API du système de fichiers dans Apache Spark
Le système de fichiers API vous permet de lire des données à partir de divers périphériques de stockage comme HDFS, S3 ou Fileyste local.
19) Quelle est la tâche de Spark Engine
Spark Engine est utile pour planifier, distribuer et surveiller l'application de données sur le cluster.
20) Quel est l'utilisateur de sparkContext ?
SparkContent est le point d’entrée pour Spark. SparkContext vous permet de créer des RDD qui fournissent différentes manières de générer des données.
21) Comment pouvez-vous implémenter l’apprentissage automatique dans Spark ?
MLif est une bibliothèque d'apprentissage automatique polyvalente proposée par Spark.
22) Pouvez-vous effectuer un traitement en temps réel avec Spark SQL ?
Le traitement des données en temps réel n'est pas directement possible. Cependant, cela est possible en enregistrant le RDD existant en tant que table SQL et en déclenchant les requêtes SQL en priorité.
23) Quelles sont les différences importantes entre Apache et Hadoop
Paramètre | Apache Spark | Hadoop |
---|---|---|
Vitesse | 100 fois plus rapide que Hadoop. | Sa vitesse est modérée. |
Gestion | Fonctionnalité de traitement par lots en temps réel. | Il propose uniquement un traitement par lots. |
Courbe d'apprentissage | Facile | Dur |
Interactivity | Il a des modes interactifs | Hormis Pig and Hive, il n’y a pas de manière interactive. |
24) pouvez-vous exécuter Apache Spark sur Apache Mesos ?
Oui, vous pouvez exécuter Apache Spark sur les clusters matériels gérés par Mesos.
25) Expliquer les partitions
La partition est une division plus petite et logique des données. C'est la méthode permettant de dériver des unités logiques de données pour accélérer le processus de traitement.
26) Définir le terme 'Lazy Evolution' en référence à Apache Spark
Apache Spark retarde son évaluation jusqu'à ce qu'elle soit nécessaire. Pour les transformations, Spark les ajoute à un DAG de calcul et uniquement lors de la dérivation de certaines données.
27) Expliquer l'utilisation des variables de diffusion
L'utilisation la plus courante des variables de diffusion est :
- Les variables de diffusion aident le programmeur à conserver une variable en lecture seule en cache sur chaque machine au lieu d'en envoyer une copie avec les tâches.
- Vous pouvez également les utiliser pour donner à chaque nœud une copie d'un grand ensemble de données d'entrée de manière efficace.
- Les algorithmes de diffusion vous aident également à réduire les coûts de communication
28) Comment utiliser Akka avec Spark ?
Spark utilise Akka pour la planification. Il utilise également Akka pour la messagerie entre les ouvriers et les maîtres.
29) Quel est le fondamental Structure de données d'étincelle
La trame de données est fondamentale et constitue la structure de données fondamentale de Spark.
30) Pouvez-vous utiliser Spark pour le processus ETL ?
Oui, vous pouvez utiliser Spark pour le processus ETL.
31) A quoi sert la transformation cartographique ?
La transformation cartographique sur un RDD produit un autre RDD en traduisant chaque élément. Il vous aide à traduire chaque élément en exécutant la fonction fournie par l'utilisateur.
32) Quels sont les inconvénients de l’utilisation de Spark ?
Voici quelques-uns des inconvénients de l’utilisation de Spark :
- Spark consomme une énorme quantité de données par rapport à Hadoop.
- Vous ne pouvez pas tout exécuter sur un seul nœud, car il ne faut pas faire confiance au travail sur plusieurs clusters.
- Les développeurs ont besoin d'une attention particulière lors de l'exécution de leur application dans Spark.
- Spark Streaming ne prend pas en charge les critères de fenêtre basés sur les enregistrements.
33) Quelles sont les utilisations courantes d’Apache Spark ?
- Apache Spark est utilisé pour :
- Apprentissage automatique interactif
- Traitement de flux
- Analyse et traitement des données
- Traitement des données des capteurs
34) Indiquez la différence entre les fonctions persist() et cache().
La fonction Persist() permet à l'utilisateur de spécifier le niveau de stockage tandis que cache() utilise le niveau de stockage par défaut.
35) Nommez la bibliothèque Spark qui permet un partage de fichiers fiable à la vitesse de la mémoire sur différents frameworks de cluster.
Tachyon est une bibliothèque Spark qui permet un partage de fichiers fiable à la vitesse de la mémoire sur divers frameworks de cluster.
36) Apache Spark convient parfaitement à quel type de techniques d'apprentissage automatique ?
Apache Spark est idéal pour les algorithmes d'apprentissage automatique simples tels que le clustering, la régression et la classification.
37) Comment pouvez-vous supprimer l'élément avec un présent critique dans n'importe quel autre Rdd est Apache Spark ?
Afin de supprimer les éléments avec une clé présente dans n’importe quel autre rdd, vous devez utiliser la fonction substractkey().
38) A quoi servent les points de contrôle dans Spark ?
Les points de contrôle permettent au programme de fonctionner XNUMX heures sur XNUMX. De plus, cela contribue à le rendre résilient aux pannes, quelle que soit la logique de l’application.
39) Expliquer le graphique de lignée
Ordinateur d'informations sur le graphique de lignée chaque RDD sur demande. Par conséquent, chaque fois qu’une partie du RDD persistant est perdue. Dans cette situation, vous pouvez récupérer ces données à l’aide des informations du graphique de lignage.
40) Quels sont les formats de fichiers pris en charge par Spark ?
Spark prend en charge les formats de fichiers json, tsv, snappy, orc, rc, etc.
41) Que sont les actions ?
Action vous aide à ramener les données de RDD vers la machine locale. Son exécution est le résultat de toutes les transformations créées précédemment.
42) Qu'est-ce que le fil ?
Yarn est l'une des fonctionnalités les plus importantes d'Apache Spark. L'exécution de Spark sur Yarn permet une distribution binaire de Spark car elle est construite sur le support de Yarn.
43) Expliquez Spark Executor
Un exécuteur est un processus Spark qui exécute des calculs et stocke les données sur le nœud travailleur. Les tâches finales de SparkContent sont transférées à l'exécuteur pour leur exécution.
44) est-il nécessaire d'installer Spark sur tous les nœuds lors de l'exécution de l'application Spark sur Yarn ?
Non, vous n'avez pas nécessairement besoin d'installer Spark sur tous les nœuds, car Spark s'exécute au-dessus de Yarn.
45) Qu'est-ce qu'un nœud de travail dans Apache Spark ?
Un nœud travailleur est n'importe quel nœud pouvant exécuter le code d'application dans un cluster.
46) Comment lancer des tâches Spark dans Hadoop MapReduce ?
Spark dans MapReduce permet aux utilisateurs d'exécuter toutes sortes de tâches Spark dans MapReduce sans avoir besoin d'obtenir les droits d'administrateur de cette application.
47) Expliquez le processus pour déclencher un nettoyage automatique dans Spark afin de gérer les métadonnées accumulées.
Vous pouvez déclencher des nettoyages automatiques en voyant le paramètre « spark.cleaner.ttf » ou en séparant les tâches de longue durée en plusieurs lots et en écrivant les résultats intermédiaires sur le disque.
48) Expliquer l'utilisation de Blinkdb
BlinkDB est un moteur de requête qui vous permet d'exécuter des requêtes SQL sur d'énormes volumes de données et d'afficher les résultats des requêtes dans des barres d'erreur significatives.
49) Hoe Spark gère-t-il la surveillance et la journalisation en mode autonome ?
Oui, un Spark peut gérer la surveillance et la journalisation en mode autonome car il dispose d'une interface utilisateur Web.
50) Comment identifier si une opération donnée est une Transformation ou une Action ?
Vous pouvez identifier l'opération en fonction du type de retour. Si le type de retour n'est pas RDD, alors l'opération est une action. Cependant, si le type de retour est le même que celui du RDD, alors l'opération est une transformation.
51) Pouvez-vous utiliser Apache Spark pour analyser et accéder aux données stockées dans les bases de données Cassandra ?
Oui, vous pouvez utiliser Spark Cassandra Connector qui vous permet d'accéder et d'analyser les données stockées dans la base de données Cassandra.
52) Indiquez la différence entre Spark SQL et Hql
SparkSQL est un composant essentiel du moteur Spark Core. Il prend en charge SQL et Hive Query Language sans modifier sa syntaxe.
Ces questions d'entretien vous aideront également dans votre soutenance