Cette formation de trois jours est conçue pour introduire les Data Scientists à Scala, en mettant l'accent sur son utilisation dans un environnement Spark. Le premier jour couvre les bases de Scala, y compris sa syntaxe et la manipulation de données sur Databricks. Le deuxième jour explore les paradigmes fonctionnels et impératifs, ainsi que la modélisation des données et la gestion des erreurs. Le troisième jour prépare les participants à utiliser Scala avec Spark, en structurant des notebooks et en travaillant sur un projet final de pipeline data science. Chaque journée inclut des exercices pratiques pour renforcer les compétences acquises et préparer les participants à des projets réels.
Objectifs
Acquérir les bases de Scala pour une utilisation efficace avec Spark.
Comprendre les spécificités du langage par rapport à Python, notamment dans le contexte data science.
Être capable d'écrire du code Scala propre, idiomatique, prêt à être utilisé avec Spark.
Public visé
Le public visé pour cette formation comprend principalement les data scientists, les chefs de projet et les développeurs.
Cette formation est également adaptée aux statisticiens, consultants Big Data, et data analysts.
Prérequis
Connaissance solide de Python ou un langage du type Java, notamment dans un contexte notebook et data science
Programme
Jour 1 – Introduction à Scala pour Data Scientists
Contexte et positionnement de Scala
Historique et cas d'usage
Intérêt de Scala dans un environnement Spark
Scala vs Python pour la data science
Syntaxe de base Scala
Variables, types, expressions
Fonctions : déclaration, expression lambda
Structures de contrôle (if, match, for, while)
Collections et manipulation de données
List, Set, Map, Tuple
Immutabilité, transformation avec map, filter, flatMap
Comparaison avec les outils Python : pandas, list comprehension, etc.
Premiers pas sur Databricks (support de la formation)
Notebooks Scala
Chargement de fichiers simples (CSV, JSON)
Affichage de données tabulaires
Exercices pratiques : mini-notebooks de manipulation de données (prétraitement, parsing, regroupement)
Jour 2 – Paradigmes et structuration du code Scala
Cas d'usage sur des structures de données complexes (JSON, vecteurs, etc.)
Comparaison avec les structures conditionnelles Python
Modélisation avec classes et objets
case class pour modéliser des données typées
companion object, méthodes utilitaires
Introduction à la POO en Scala
Gestion fonctionnelle des erreurs
Option, Some, None dans le prétraitement
Try, Success, Failure dans les chargements et conversions de données
Exercices pratiques : pipeline de préparation de données (nettoyage, enrichissement, typage)
Jour 3 – Scala pour la data science avec Spark (préparation)
Structuration de notebooks Scala pour Spark
Organisation du code (fonctions réutilisables, séparations logiques)
Bonnes pratiques de structuration des notebooks
Lecture/écriture de données
Chargement de données CSV, JSON, Parquet
Préparation des données avant modélisation
Export de résultats typés
Interopérabilité et pratique mixte Scala/Python (si utile)
Notebooks mixtes via %python, %scala
Cas d'usage : Scala pour les prétraitements, Python pour les modèles
Projet final – Atelier Scala data science (sans Spark API avancée)
Objectif : simuler un pipeline data science complet (chargement, nettoyage, enrichissement)
Structuration idiomatique Scala pour une future utilisation avec Spark
Exercice final : pipeline Scala préparatoire à un traitement Spark distribué
Modalités pédagogiques
Docaposte Institute propose plusieurs dispositifs pédagogiques adaptés aux apprenants :
Formation en présentiel
En groupe (inter-entreprises ou intra-entreprise)
En individuel (monitorat)
En journée ou en cours du soir (sur demande spécifique)
Formation en distanciel
Distanciel synchrone
Distanciel asynchrone
Moyens et supports pédagogiques
Alternance d'apports théoriques et de mises en pratique contextualisées.
Progression pédagogique structurée, de la compréhension à la mise en œuvre opérationnelle.
Pédagogie immersive favorisant une mise en application immédiate des compétences.
Formation interactive et participative s'appuyant sur des ateliers pratiques, études de cas et échanges collectifs (+ 60 % du temps de formation.)
Séquences pédagogiques rythmées et évaluations formatives régulières pour renforcer l'ancrage des apprentissages.
Supports de cours, ressources documentaires et références mis à disposition par le formateur
Modalités d'évaluation et de suivi
En amont de la formation(évaluation en ligne dans l'extranet apprenant)
Recueil des besoins et des attentes des participants.
Auto-positionnement permettant d'évaluer le niveau initial des apprenants.
Tout au long de la formation
Évaluations continues réalisées par le formateur travers des questions orales, exercices, QCM, études de cas et mises en situation pratiques.
À l'issue de la formation(évaluations en ligne dans l'extranet apprenant)
Auto-positionnement afin de mesurer l'acquisition des compétences visées.
Validation de l'acquisition des compétences par le formateur
Questionnaire de satisfaction « à chaud » à l'issue de la formation
Questionnaire de satisfaction "à froid", 45 jours après la formation afin d'évaluer l'ancrage des acquis et leur mise en application en situation professionnelle.
Informations sur l'admission
Nous consulter.
Modalités d'admission
Admission sans disposition particulière
Accessibilité
Nos formations peuvent être adaptées à certaines conditions de handicap. Nous contacter pour toute information et demande spécifique.
Si vous êtes en situation de handicap, contactez-nous avant le début de votre formation pour que nous puissions vous orienter efficacement et vous accueillir dans les meilleures conditions.
Inscription possible jusqu'à 10 jours avant le démarrage de la formation
Session sélectionnée
COMPLÈTE
Prochaines Sessions
Cette formation n'est pas programmée pour le moment.