← 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
Intelligence Artificielle & Data

À 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

  • check_circleAppréhender les concepts fondamentaux d'Apache Spark
  • check_circleConcevoir et développer des applications de traitement en temps réel avec Spark Streaming
  • check_circleDéployer et configurer un cluster Spark
  • check_circleInterroger et manipuler des données structurées avec Spark SQL
  • check_circleAborder 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.