Recherche avancée
Par formation
Par date
Par ville
logo HUB Formation
Organisme de Formation
aux Technologies et métiers de L'informatique
La pédagogie au service de la technologie
Accueil > Domaines > Big Data > Big Data - Mise en oeuvre de traitements avec Spark

Big Data - Mise en oeuvre de traitements avec Spark

Mettre en oeuvre Spark pour optimiser des calculs

L’essor du Big Data a considérablement fait évoluer l’écosystème Hadoop, à l’origine principalement constitué de HDFS et MapReduce. Parmi les nouveaux outils qui gravitent autour d’Hadoop, Apache Spark, framework dédié au traitement et à l’analyse de données massives, a particulièrement attiré l’attention à tel point que quelques mois après sa mise à disposition sur le marché, les fournisseurs de solutions Hadoop l’ont intégré à leurs distributions. S’il rencontre un franc succès, c’est bien que Spark se pose en alternative crédible à MapReduce dont la mise en oeuvre est parfois lourde. En effet, contrairement à MapReduce, Spark propose un framework complet et unifié pour répondre aux besoins de traitements de données hétérogènes tout en permettant aux applications Hadoop d’être exécutées beaucoup plus rapidement.

Objectifs

  • Pouvoir comprendre le fonctionnement de Spark et son utilisation dans un environnement Hadoop
  • Savoir intégrer Spark dans un environnement Hadoop
  • Comprendre comment traiter des données Cassandra, HBase, Kafka, Flume, Sqoop et S3

Public

  • Chefs de projet
  • Data Scientists
  • Développeurs

Prérequis

  • Connaissance de Java ou Python
  • Avoir suivi le séminaire "Hadoop - Présentation de l'écosystème" (SEM35) ou avoir des bases Hadoop
  • Notions de calculs statistiques

Programme de la formation

INTRODUCTION

  • Présentation de Spark
  • Origine du projet
  • Apports et principes de fonctionnement
  • Langages supportés
  • Mise en oeuvre sur une architecture distribuée
  • Architecture : clusterManager, driver, worker, ...

PREMIERS PAS

  • Utilisation du Shell Spark avec Scala ou Python
  • Modes de fonctionnement
  • Interprété, compilé
  • Utilisation des outils de construction
  • Gestion des versions de bibliothèques
  • Mise en pratique en Java, Scala et Python
  • Notion de contexte Spark
  • Extension aux sessions Spark

RÈGLES DE DÉVELOPPEMENT

  • Mise en pratique en Java, Scala et Python
  • Notion de contexte Spark
  • Différentes méthodes de création des RDD : depuis un fichier texte, un stockage externe
  • Manipulations sur les RDD (Resilient Distributed Dataset)
  • Fonctions, gestion de la persistance

CLUSTER

  • Différents cluster managers : Spark interne, avec Mesos, avec Yarn, avec Amazon EC2
  • Architecture : SparkContext, SparkSession, Cluster Manager, Executor sur chaque noeud
  • Définitions : Driver program, Cluster manager, deploy mode, Executor, Task, Job
  • Mise en oeuvre avec Spark et Amazon EC2
  • Soumission de jobs, supervision depuis l'interface web

TRAITEMENTS

  • Lecture/écriture de données : texte, JSon, Parquet, HDFS, fichiers séquentiels
  • Jointures
  • Filtrage de données, enrichissement
  • Calculs distribués de base
  • Introduction aux traitements de données avec map/reduce

SUPPORT CASSANDRA

  • Description rapide de l'architecture Cassandra
  • Mise en oeuvre depuis Spark
  • Exécution de travaux Spark s'appuyant sur une grappe Cassandra

DATAFRAMES

  • Spark et SQL
  • Objectifs : traitement de données structurées
  • L'API Dataset et DataFrames
  • Optimisation des requêtes
  • Mise en oeuvre des Dataframes et DataSet
  • Comptabilité Hive
  • Travaux pratiques : extraction, modification de données dans une base distribuée
  • Collections de données distribuées
  • Exemples

STREAMING

  • Objectifs , principe de fonctionnement : stream processing
  • Source de données : HDFS, Flume, Kafka, ...
  • Notion de Streaming
  • Contexte, DStreams, démonstrations
  • Travaux pratiques : traitement de flux DStreams en Scala
  • Watermarking
  • Gestion des micro-batches
  • Travaux pratiques : mise en oeuvre d'une chaîne de gestion de données en flux tendu (IoT, Kafka, SparkStreaming, Spark)
  • Analyse des données au fil de l'eau

INTÉGRATION HADOOP

  • Rappels sur l'écosystème Hadoop de base : HDFS/Yarn
  • Création et exploitation d'un cluster Spark/YARN
  • Intégration de données sqoop, kafka, flume vers une architecture Hadoop et traitements par Spark
  • Intégration de données AWS S3

MACHINE LEARNING

  • Fonctionnalités : Machine Learning avec Spark, algorithmes standards, gestion de la persistance, statistiques
  • Mise en oeuvre avec les DataFrames

SPARK GRAPHX

  • Fourniture d'algorithmes, d'opérateurs simples pour des calculs statistiques sur les graphes
  • Travaux pratiques : exemples d'opérations sur les graphes

Méthode pédagogique

Chaque participant travaille sur un poste informatique qui lui est dédié. Un support de cours lui est remis soit en début soit en fin de cours. La théorie est complétée par des cas pratiques ou exercices corrigés et discutés avec le formateur. Le formateur projette une présentation pour animer la formation et reste disponible pour répondre à toutes les questions.

Méthode d'évaluation

Tout au long de la formation, les exercices et mises en situation permettent de valider et contrôler les acquis du stagiaire. En fin de formation, le stagiaire complète un QCM d'auto-évaluation.

Suivre cette formation à distance

  • Un ordinateur avec webcam, micro, haut-parleur et un navigateur (de préférence Chrome ou Firefox). Un casque n'est pas nécessaire suivant l'environnement.
  • Une connexion Internet de type ADSL ou supérieure. Attention, une connexion Internet ne permettant pas, par exemple, de recevoir la télévision par Internet, ne sera pas suffisante, cela engendrera des déconnexions intempestives du stagiaire et dérangera toute la classe.
  • Privilégier une connexion filaire plutôt que le Wifi.
  • Avoir accès au poste depuis lequel vous suivrez le cours à distance au moins 2 jours avant la formation pour effectuer les tests de connexion préalables.
  • Votre numéro de téléphone portable (pour l'envoi du mot de passe d'accès aux supports de cours et pour une messagerie instantanée autre que celle intégrée à la classe virtuelle).
  • Selon la formation, une configuration spécifique de votre machine peut être attendue, merci de nous contacter.
  • Pour les formations incluant le passage d'une certification la dernière journée, un voucher vous est fourni pour passer l'examen en ligne.
  • Pour les formations logiciel (Adobe, Microsoft Office...), il est nécessaire d'avoir le logiciel installé sur votre machine, nous ne fournissons pas de licence ou de version test.
  • Horaires identiques au présentiel.