- Cours pratique
- Informatique
Formation Apache Spark pour les développeurs Java
Développer des applications distribuées avec Apache Spark et Java pour traiter efficacement de grands volumes de données

- Durée
- 3 jours
- Niveau
- Intermédiaire
- Modalités
- Présentiel / Distanciel
Description de la formation Apache Spark Java
Qu'est-ce qu'Apache Spark ?
Apache Spark est un moteur de calcul distribué conçu pour traiter rapidement de grands volumes de données. Grâce à ses capacités de traitement batch, streaming, analytique et machine learning, Spark est devenu l'un des composants majeurs des architectures Big Data et Data Engineering modernes.
Pourquoi suivre une formation Apache Spark pour les développeurs Java ?
Les développeurs Java intervenant sur des plateformes Data doivent être capables de concevoir des traitements distribués performants, d'exploiter les APIs Spark et de comprendre les mécanismes d'optimisation propres aux architectures Big Data. Cette formation permet d'acquérir les compétences nécessaires pour développer, déployer et optimiser des applications Spark en Java dans des environnements de production.

Objectifs pédagogiques
À l'issue de cette formation Apache Spark pour les développeurs Java, vous aurez acquis les connaissances et compétences nécessaires pour :
- Comprendre l'architecture et le modèle d'exécution de Spark
- Développer des traitements distribués avec l'API Java
- Manipuler les RDD, DataFrames et Datasets
- Utiliser Spark SQL pour traiter des données structurées
- Lire et écrire des données dans différents formats
- Déployer une application Spark sur un cluster
- Diagnostiquer les problèmes de performance
- Optimiser les traitements distribués
- Découvrir Structured Streaming
- Mettre en œuvre les premiers traitements de Machine Learning avec MLlib
Objectifs opérationnels
Savoir développer, déployer et optimiser des applications Apache Spark en Java afin de traiter efficacement des données massives dans un environnement distribué.
Programme
Contenu du cours, module par module
5 modules
- Présentation d'Apache Spark et de son écosystème
- Comparaison avec Hadoop MapReduce
- Modules Spark Core, SQL, Streaming, MLlib et GraphX
- Architecture Driver, Executors et Cluster Manager
- Notions de Job, Stage et Task
- Projet Maven et SparkSession
Travaux pratiques
Description : Installation de l'environnement, configuration du projet Java et réalisation d'un premier traitement de comptage sur le jeu de données des arbres de Paris. Les participants découvrent le modèle distribué de Spark et valident les premiers traitements.
- Création et manipulation des RDD
- Transformations et actions
- Évaluation paresseuse et lineage
- Accumulateurs et variables broadcastées
- Gestion des partitions
Travaux pratiques
Description : Agrégations et jointures sur les arbres de Paris via l'API RDD. Mesure de l'impact du partitionnement sur les performances et analyse de la tolérance aux pannes.
- DataFrames et Datasets
- Spark SQL et optimiseur Catalyst
- Sources CSV, JSON, Parquet et JDBC
- Interopérabilité RDD et DataFrames
- Lecture et écriture de données
- Architectures Standalone et YARN
- Packaging Maven
- Gestion des dépendances
- Déploiement avec spark-submit
- Configuration des ressources
Travaux pratiques
Description : Requêtes SQL, jointures sur les archives météo NOAA, connexion JDBC à une base externe et écriture des résultats au format Parquet.
Travaux pratiques
Description : Packaging du traitement météo, génération de l'artefact exécutable et soumission sur un cluster Spark standalone avec analyse de l'utilisation des ressources.
- Lecture du DAG dans Spark UI
- Narrow et Wide Dependencies
- Shuffles et coûts associés
- Cache et Persist
- Repartition, Coalesce et Broadcast Joins
- Localité des données
Travaux pratiques
Description : Profilage d'un job lent à l'aide de Spark UI, identification des goulots d'étranglement et optimisation mesurée avant/après.
- Structured Streaming
- Intégration Kafka
- Fenêtres temporelles
- Introduction à GraphX
- Spark MLlib
- Classification et régression
- Construction d'un pipeline ML
Travaux pratiques
Description : Mise en œuvre d'un pipeline de streaming consommant des événements en temps réel puis entraînement d'un modèle MLlib simple sur les données météo.
Travaux pratiques
Les travaux pratiques représentent environ 60 % de la formation. Les participants développent progressivement une application Spark complète exploitant différents jeux de données réels.
Programme mis à jour le 10/06/2026
Public concerné
Ce cours s'adresse aux développeurs Java, développeurs Big Data, Data Engineers et architectes techniques souhaitant développer des applications distribuées avec Apache Spark.

Prérequis
Pour suivre cette formation, il est nécessaire de maîtriser le langage Java ainsi que les concepts de programmation orientée objet. Des connaissances de base en SQL sont recommandées.
J’évalue mes connaissances pour vérifier que je dispose des prérequis nécessaires pour profiter pleinement de cette formation en faisant le test de prérequis.
Faire le testFinancement
Cette formation peut être prise en charge par votre entreprise, seule ou avec l’appui de son opérateur de compétences. Nous fournissons le devis et les pièces attendues par l’OPCO.
Formations liées
- Big Data : Architecture et InfrastructureRéf. OAIH3 joursFondamentalProchaine session : 4 nov.2 090 €
- Big Data : Développement d'applications et Data Visualisation Réf. ODAB4 joursFondamentalProchaine session : 2 nov.2 490 €
- Big Data : Enjeux, concepts, architectures et outilsRéf. OBIF2 joursFondamentalProchaine session : 3 déc.1 790 €
- Confluent Developer Skills for Apache Kafka®Réf. KAFK3 joursIntermédiaireProchaine session : 4 nov.2 370 €