Accueil Formations Python pour la Data Science : Initiation au Big Data avec PySpark

Python pour la Data Science : Initiation au Big Data avec PySpark

Intéressé.e par la formation ?
Contactez-nous

Description

Spark est un des principaux frameworks d’analyse de données Big Data. Il est massivement déployé sur les infrastructures de type Data Lake, soit directement, soit au travers d’autres outils tels que Dataiku DSS. PySpark est une bibliothèque permettant d’utiliser ce framework en Python.

Cette formation est une formation compagnon du parcours “Python pour la Data Science”. Elle constitue un complément à la formation “Exploration de données” du même parcours et insiste sur la manipulation de données en environnement BigData.

Intra-entreprise : Sur devis

Objectifs de la formation
  • Reconnaître les spécificités du traitement de données en environnement Big Data
  • Savoir expliquer les notions principales liées au traitement de données distribué sur un cluster de calcul Spark (Driver, master, exécuteur, Partitionnement, shuffle)
  • Appliquer les principaux types de manipulation de données avec la bibliothèque PySpark

Profil des béneficiaires

Pour qui

  • Personnes devant manipuler des données dans l’écosystème Python avec PySpark

Prérequis

  • Utilisation de Python, des Notebooks Jupyter et de la bibliothèque Pandas ou avoir suivi la formation « Python pour la Data Science : L’exploration de données »
  • Maîtriser les bases de la manipulation de données (notamment Aggrégations, Jointures, etc)
  • Lecture de l’anglais technique

Contenu de la formation

  • 1. Big Data, Clusters de Calcul et Spark

    • Introduction aux enjeux du Big Data : volume, variété, vélocité
    • Positionnement de Spark dans l’écosystème de traitement de données
    • Principes du calcul distribué
    • Notion de cluster Spark : driver, executors, ressources de calcul
  • 2. Lecture et écritures de données

    • Lecture des données CSV
    • Spécificité de l’écriture de données en environnement BigData
    • Les formats de données
  • 3. Manipulations simples en PySpark

    • Les Dataframes PySpark
    • Les sélection et transformations de colonnes
    • Filtrages des lignes
    • Notion de calcul paresseux
    • Agrégations globales : notion de “map-reduce” et spécificités en calcul distribué
  • 4. Structuration et croisements de données

    • Groupements et agrégations
    • Jointures
  • 5. Structure d’une application Spark

    • Notion de partitions et de dépendances larges et étroites
    • Notion de shuffle

      Les annexes suivantes sont optionelles et abordées en fonction du temps disponible et des préférences des participants
  • Les annexes suivantes sont optionelles et abordées en fonction du temps disponible et des préférences des participants

    • a1. Fonctions fenêtrées
      • Définition et principe
      • Les différents types de fenêtre et d’agrégations
    • a2. Partitionnement et optimisations
      • Partitionnement physiques et buckets
      • Repartitionnement et cache
    • a3. SQL
      • Equivalence API Spark et SQL
      • Execution de requêtes SQL
    • a4. Fonctions définies par l’utilisateurs
      • Fonctions Python
      • Fonctions Pandas
      • Fonctions d’agrégation
      • Spécificités en Spark
    • a5. Déploiement d’un cluster Spark “standalone”
      • Les services master et worker
      • Modes cluster et mode client

Équipe pédagogique

  • Conception :
    • Morjan BAHAJI

    • Alexis Mignon

  • Formateurs :
    • Morjan BAHAJI

    • Pavel ORLOV

Suivi de l’exécution et évaluation des résultats
  • Exercices en cours de formation
  • Formulaire d’évaluation de la formation

Ressources techniques et pédagogiques

  • Alternances entre exposés théoriques et mises en pratique
  • Etude d’un jeu de données fil rouge
  • Utilisation des notebooks Jupyter pour rassembler explications et exercices pratiques
  • Capacité d’accueil

    12 personnes

Accessibilité

Prochaines dates

Aucune session à venir pour l’instant.