Apache Spark
Apache Spark est un moteur de traitements distribués sur des gros volumes de données.
Souvent mis en opposition au modèle mapreduce implémenté dans Hadoop, il en est en fait une extension qui peut en diviser les temps d’exécution jusqu’à un facteur de 100 en maximisant le travail « in-memory ».
Spark exploite les principes de programmation fonctionnelle afin d’optimiser l’empreinte mémoire nécessaire à son exécution. Conçu pour mettre en œuvre des traitements distribués, Spark peut s’appuyer sur plusieurs types de clusters, dont YARN le négociateur de ressources intégré à Hadoop.
- +15ans d'expérience pour tous nos formateurs
- 3jours
À qui s’adresse cette formation "Apache Spark" ?
Description de la formation "Apache Spark"
-
Méthodes pédagogiques
- La formation se passe en mode présentiel ou en distanciel), et se compose de 70% de travaux pratiques (Mises en situation, débats, exercices). Le formateur alterne entre théorie et pratique ; chaque participant dispose d'un ordinateur sur lequel il réalisera les exercices proposés.
- Une évaluation quotidienne de l'acquisition des connaissances de la veille est effectuée.
- Une synthèse est proposée en fin de formation.
- Une évaluation à chaud sera proposée au stagiaire à la fin du cours.
- Un support de cours (version électronique) sera remis à chaque participant comprenant les slides sur la théorie, les exercices.
-
Présentation
Apache Spark est un moteur de traitements distribués sur des gros volumes de données.
Souvent mis en opposition au modèle mapreduce implémenté dans Hadoop, il en est en fait une extension qui peut en diviser les temps d’exécution jusqu’à un facteur de 100 en maximisant le travail « in-memory ».
Spark exploite les principes de programmation fonctionnelle afin d’optimiser l’empreinte mémoire nécessaire à son exécution. Conçu pour mettre en œuvre des traitements distribués, Spark peut s’appuyer sur plusieurs types de clusters, dont YARN le négociateur de ressources intégré à Hadoop.
-
Objectifs
- Concevoir une application avec Spark
- Comprendre le principe de distribution des traitements
- Maîtriser les concepts fondamentaux des et des Resilient Distributed Dataset
- Utiliser les dataframes via Spark SQL
- Utiliser SparkUI afin d’analyser les jobs et tâches de Spark
- Positionner SparkML dans un contexte de data science
- Traiter des données en continu avec Spark Streaming
-
Audience
- Architectes
- Chefs de projet
- Data Scientists
- Développeurs
-
Formateur
Le formateur est un expert du domaine qui intervient sur le sujet depuis plusieurs années en formation mais aussi en conseil.
Doté d’une grande qualité d’écoute, sa pédagogie et sa compétence technique vous permettront d’acquérir les compétences sur SPARK.
Il saura alterner entre théorie, pratique, et retours d’expérience.
-
Prérequis
- Une connaissance d'un langage de programmation est demandée.
- Afin de valider les compétences et les prérequis de chaque participant, en amont de la formation, le formateur organise un entretien téléphonique. Il confirme alors que le participant a le niveau nécessaire et que le contenu répond bien à ses attentes.
-
Programme
Présentation de Spark
- Spark : un besoin de distribuer vos traitements
- Architecture de Spark runtime : driver, executor, master
- Positionner Spark vs Hadoop
- Les langages du framework : Java | Scala | Python | R
RDD : Resilient Distributed Dataset
- RDD : Le composant fondateur du fonctionnement de Spark
- Les partitions : la base de la distribution
- Transformations, actions et directed acyclic Graph
- Manipuler un RDD : Une API riche
- Le cas particulier des Pairs RDD
SparkSQL, Dataframes et Datasets
- Un modèle de programmation haut niveau
- Initialisation d’un dataframe
- Manipulation : sélection, tri et fonctions d’agrégation.
- Dataset : une surcouche typée des dataframes
- Comprendre le plan d’exécution d’une requête
- Bonnes et mauvaises pratiques avec SparkSQL
Mise en cluster : Les infrastructures de déploiement
- Les composants d’une exécution Spark : Jobs, stages et tasks
- Un principe important : Data locality
- Distribution des données dans le cadre d’un cluster : les partitions
- Redistribution des données : le shuffle
- Bonnes pratiques et performance
Machine Learning
- Comprendre les principes fondamentaux du Machine Learning
- Apprentissage et création d’un modèle avec SparkML
Spark streaming
- Collecte et traitement des données en continu
- Stream processing avec Spark
- Comprendre le principe du micro-batching
-
Tarif
Nous consulter