Formation Spark Tuning Avancé
2430€ HT / personne |
4 jours (28 heures) |
Présentation
Conçu en 2009 aux États Unis, Apache Spark est un moteur d’analyse unifié pour le traitement de grande quantité de données à grande échelle. Cet outil se démarque par sa simplicité d’utilisation malgré sa capacité à délivrer des analyses sophisitiquées.
Cette formation Spark Tuning est destinée aux administrateurs voulant optimiser les performances de leur système de gestion de données. L’ajustement et l’optimisation des ressources (CPU cores et mémoires) joue un rôle important pour le maintien d’un système informatique de bonne qualité.
Après une introduction au langage Scala, et une explication de Spark, nous étudierons l’api RDD, les dataframes, le Spark Streaming. Nous verrons ensuite Spark en production et finirons sur une introduction au Machine Learning.
À chaque fois, des exercices pratiques sur des clusters de machines avec des datasets significatifs permettront d’assimiler par la pratique les concepts présentés.
Comme toutes nos formations, celle-ci vous présentera la dernière version stable en date, Spark 3.5.2.
Objectifs
- Être capable d’installer et d’utiliser Spark 4 et ses nouveautés de manière autonome
- Être capable d’utiliser Scala comme langage principal dans Spark
- Comprendre et optimiser les dataframes
- Appréhender le tuning sur Spark en production en utilisant les bonnes pratiques
Public visé
- Développeurs
- Architectes
- Administrateurs systèmes
- DevOps
Pré-requis
- Une première expérience sur le développement et la mise en production des traitements Spark
- Connaissances de base d’un système Unix
- Connaissance de Scala ou Python & Git
Programme de la formation Spark et Tuning avancé
Jour 1 – Introduction Scala et Spark
- Pourquoi Scala est le langage du Bigdata ?
- Introduction au paradigme fonctionnel
- Installation des environnements
- Hands-on Scala
- Syntaxe
- Pattern matching
- API collection
- Les types fonctionnels
- Pourquoi Spark ?
- Architecture de Spark
Jour 2 – Comprendre et utiliser Spark
L’API RDD
- Présentation des RDD
- PairedRDD
- Manipulation de l’api RDD (transformations , actions ….)
- L’import et l’export depuis et vers : cSv, Avro et Elasticsearch
Dataframe
- Présentation des Dataframes
- L’api Dataframe et UDF
- SqlContext
- Utilisation de SQL avec des Dataframes
- Les Datasets
Jour 3 – Dataframe et optimisation
Optimisation
- L’analyse du DAG via Spark-UI
- Pattern d’optimisation
- Cache et persistance
- Impact de la localité des données sur les performances
Spark streaming
- StreamingContext
- DStream
- Continuous Aggregations
- Analyse temps-réel depuis un Apache Kafka
- Les problématiques des garanties de livraison
- Spark vs Flink
Jour 4 – Spark en prod et conclusion
Spark en production
- Spark en cluster : Yarn, Mesos, Standalone
- Yarn client vs Yarn cluster
- Stockage (HDFS, S3, Cassandra ….)
Architecture
- Architecture Lambda
- Architecture Kappa
Introduction au Machine Learning (Optionnel)
- Les classes d’algorithmes pour le ML : supervisé et non supervisé
- Les algorithmes de ML
- Comment fonctionne l’algorithme de la régression linéaire et / ou de la régression
logistique - Mise en pratique d’un algorithme de régression linéaire ou la régression logistique
2 modules spécifiques sont disponibles en Intra-entreprise uniquement
Module for Data Engineer – Spark Scala
Jour 1 – RDD & Dataframes
L’API RDD
- Présentation des RDD
- PairedRDD
- Manipulation de l’api RDD (transformations , actions, etc.)
- L’import et l’export depuis et vers : cSv, Parquet
Dataframe
- Présentation des Dataframes
- L’api Dataframe et UDF
- Utilisation de SQL avec des Dataframes
- Les Datasets
Jour 2 – Mise en prod & Optimisation
Optimisation
- L’analyse du DAG via Spark-UI
- Pattern d’optimisation
- Cache et persistance
- Impact de la localité des données sur les performances
Spark en production
- Spark en cluster : Yarn, Mesos, Standalone
- Yarn client vs Yarn cluster
- Stockage (HDFS, S3, Cassandra, etc.)
Module for Data Scientist – Spark Python
Jour 1 – RDD & Dataframes
L’API RDD
- Présentation des RDD
- PairedRDD
- Manipulation de l’api RDD (transformations, actions, etc.)
- L’import et l’export depuis et vers : CSV, Parquet
Dataframe
- Présentation des Dataframes
- L’api Dataframe et UDF
- Utilisation de SQL avec des Dataframes
- Les Datasets
Jour 2 – Spark ML/ MLlib
Algorithmes
- Les classes d’algorithmes pour le ML : supervisé et non supervisé
- Les algorithmes de ML
- Comment fonctionne l’algorithme de la régression linéaire, la régression
- Logistique, Random Forest…
- Clustering : KNN, K-mean
MLlib
- Introduction à MLlib 2.0
- Pipelines : Transformer, Estimator, Model
- Cross-Validation
- Hyperparameters tuning
- ML persistence: sauvegarde et chargement des pipelines
Pour aller plus loin
Formation Spark Streaming
Formation Spark et Machine Learning
Formation Kafka
Formation Kibana
Formation MongoDB
Formation PostgreSQL
Langues et Lieux disponibles
Langues
- Français
- Anglais / English
Lieux
-
France entière
- Paris
- Lille
- Reims
- Lyon
- Toulouse
- Bordeaux
- Montpellier
- Nice
- Sophia Antipolis
- Marseille
- Aix-en-Provence
- Nantes
- Rennes
- Strasbourg
- Grenoble
- Dijon
- Tours
- Saint-Étienne
- Toulon
- Angers
-
Belgique
- Bruxelles
- Liège
-
Suisse
- Genève
- Zurich
- Lausanne
-
Luxembourg
Nos Formateurs Référents
Walid
Témoignages
Les + : Exemple précis…
Adéquation Théorie et TP
Les – : RAS mieux en présentiel je trouve
Je souhaite suivre : –
En synthèse : RAS
Afficher tous les témoignages
Les + : Exemple précis…
Adéquation Théorie et TP
Les – : RAS mieux en présentiel je trouve
Je souhaite suivre : –
En synthèse : RAS
Les + : – Introduction au monde Spark (installation jusqu’à prise en main)
– Travaux pratiques avec des exemples concrets
Les – : Tuning et optimisation brièvement traités
Les + : Diversité des éléments abordés. Partie sur l’analyse prédictive intéressantes.
Disponibilité du formateur
Les – : Je m’attendais à une formation beaucoup plus orientée sur le tuning de spark comme son nom le fait croire (optimisation, paramétrage, bonnes pratiques, comprendre et analyses un DAG…). Déçu sur ce point, je ne ressors pas avec des billes sur ce point alors que c’était ma principale attente.
En synthèse : Formation en distanciel, donc sur PC perso. Nécessité d’installer des logiciel en début des formations qu’il aurait pu être intéressant de mentionner en amont afin de gagner du temps
Les + : Très bonnes connaissances et expérience du formateur, pédagogue
Adaptation du formateur aux demandes de l’auditoire (ajout de slides sur la partie optimisation de Spark)
Les – : un peu de perte de temps sur certains TP
en distanciel, il est plus difficile de suivre l’avancement de chacun sur les TPs, de voir où se trouvent les difficultés, l’endroit où l’on bloque.
Pas mal de choses différentes sont présentées pendant la formation, du coup selon l’intérêt des participants, certaines parties mériteraient d’être approfondies, comme l’optimisation :
on pourrait peut être ajouter des schemas sur la partie optimisation / fonctionnement du parallélisme avec des exemples de use cas concrets , et montrer le shuffle, enchainement de repartition et de coalesce
Les + : Très bonne maitrise du sujet par le formateur, capable de répondre à tout type de questions.
Explications techniques des outils de travail, même si pas en rapport direct avec le cours (tunnel ssh, docker, scala …)
Les – : Les TP : certains étaient trop focus (i.e SQL Spark) et d’autres pas assez progressifs me concernant.
Les transitions entre Théorie et TP étaient souvent difficiles, et nous étions assez peu autonomes pour les réaliser seuls.
Les + : walid a bien su adapté le programme et repondre aux sujets pointus.
Les moments les plus pertinents étaient souvent sur les sujets hors programme, ou l’on rentrait vraiment en profondeur sur des sujets techniques
Les – : les moments les moins pertinents étaient sur les sujets très scolaires, ou l’on connaissait deja la pratique, on aurait pu passer plus vite la dessus
Je recommande la formation
Les + : Le formateur est à l’écoute des questions et s’adapte aux demandes des stagiaires. Le fonctionnement de spark en scala ou via les spark UI (DAG, plan d’exécution) est bien expliqué. Les Bonnes pratiques et le fonctionnement d’applications autour de l’écosystème big data est très utile pour se situer dans le contexte Big Data
Les – : absence d’information sur l’installation hdfs, non utilisation S3/minio
Je recommande la formation
Les + : L’étude approfondie de l’écosystème autour de Spark (Scala, ML, etc.).
L’appui sur Spark UI et l’optimisation des appels Spark.
Les compétences du formateur.
Les – : GoTo meeting prenait bcp de ressources (notamment quand on mettait la webcam).
Pas assez de possibilité de montrer des cas concrets dans nos entreprises.
Le décalage de la formation de Février 2023 à Août 2023 qui entraine une perte d’utilisation de Spark dans notre entreprise car on nous attendait pour le mettre en œuvre. Et maintenant, on va peut-être partir sur autre chose.
La pause méridienne un peu courte sur une formation dense.
Je souhaite suivre : Formation sur le stockage objet (S3 par exemple), Kubernetes.
Je recommande la formation
Je recommande la formation
Navigation Site Reviews
Noter la formation
2430€ HT / personne |
4 jours (28 heures) |
UNE QUESTION ? UN PROJET ? UN AUDIT DE CODE / D'INFRASTRUCTURE ?
Pour vos besoins d’expertise que vous ne trouvez nulle part ailleurs, n’hésitez pas à nous contacter.
ILS SE SONT FORMÉS CHEZ NOUS