← Retour aux formations
Intelligence Artificielle & Data
Spark Java pour le Big Data : RDD, Spark SQL, cluster, Streaming, GraphX et Machine Learning avec MLlib
Intermédiaire
À propos de cette formation
Chefs de projet, data scientists, développeurs et architectes souhaitant développer des applications Big Data avec Apache Spark en Java.
Objectifs de la formation
- Appréhender les concepts fondamentaux d'Apache Spark
- Concevoir et développer des applications de traitement en temps réel avec Spark Streaming
- Déployer et configurer un cluster Spark
- Interroger et manipuler des données structurées avec Spark SQL
- Aborder le Machine Learning avec SparkML et MLlib
Programme détaillé
Module 1 — Présentation d'Apache Spark
- Historique du framework Apache Spark
- Les différentes versions de Spark : Scala, Python et Java
- Comparaison avec l'environnement Apache Hadoop
- Les différents modules de Spark
- Travaux pratiques : installation et configuration de Spark, exécution d'un premier exemple (comptage de mots)
Module 2 — Programmer avec les Resilient Distributed Datasets (RDD)
- Présentation des RDD
- Créer, manipuler et réutiliser des RDD
- Accumulateurs et variables broadcastées
- Utiliser des partitions
- Travaux pratiques : manipulation de différents datasets avec les RDD et utilisation de l'API Spark
Module 3 — Manipuler des données structurées avec Spark SQL
- SQL, DataFrames et datasets
- Les différents types de sources de données
- Interopérabilité avec les RDD
- Performance de Spark SQL
- JDBC/ODBC server et Spark SQL CLI
- Travaux pratiques : manipulation de datasets via des requêtes SQL, connexion avec une base externe via JDBC/ODBC
Module 4 — Spark sur un cluster
- Types d'architecture : standalone, Apache Mesos ou Hadoop YARN
- Configurer un cluster en mode standalone
- Packager une application avec ses dépendances
- Déployer des applications avec Spark-submit
- Dimensionner un cluster
- Travaux pratiques : mise en place d'un cluster Spark
Module 5 — Analyser en temps réel avec Spark Streaming
- Principe de fonctionnement du streaming dans Spark
- Présentation des Discretized Streams (DStreams)
- Les différents types de sources
- Manipulation de l'API Streaming
- Comparaison avec Apache Storm
- Travaux pratiques : consommation de logs avec Spark Streaming
Module 6 — Manipuler des graphes avec GraphX
- Présentation de GraphX
- Les différentes opérations sur les graphes
- Créer des graphes ; Vertex and Edge RDD
- Présentation de différents algorithmes de graphes
- Travaux pratiques : manipulation de l'API GraphX à travers différents exemples
Module 7 — Machine Learning avec Spark
- Introduction au Machine Learning
- Les différentes classes d'algorithmes
- Présentation de SparkML et MLlib
- Implémentation des différents algorithmes dans MLlib
- Travaux pratiques : utilisation de SparkML et MLlib
Prérequis
Bonnes connaissances du langage Java et notions en Big Data.