La manipulation de données volumineuses distribuées sur un cluster à l'aide de concepts fonctionnels est très répandue dans l'industrie et constitue sans doute l'une des premières utilisations industrielles généralisées des idées fonctionnelles. La popularité de MapReduce et de Hadoop, et plus récemment d'Apache Spark, un cadre de collecte distribuée rapide et en mémoire écrit en Scala, en est la preuve. Dans ce cours, nous verrons comment le paradigme des données parallèles peut être étendu au cas distribué, en utilisant Spark. Nous couvrirons le modèle de programmation de Spark en détail, en prenant soin de comprendre comment et quand il diffère des modèles de programmation familiers, comme les collections parallèles en mémoire partagée ou les collections séquentielles en Scala. A travers des exemples pratiques en Spark et Scala, nous apprendrons quand les questions importantes liées à la distribution comme la latence et la communication réseau doivent être prises en compte et comment elles peuvent être traitées efficacement pour améliorer les performances. Objectifs d'apprentissage. A la fin de ce cours, vous serez capable de : - lire des données à partir d'un stockage persistant et les charger dans Apache Spark, - manipuler des données avec Spark et Scala, - exprimer des algorithmes pour l'analyse des données dans un style fonctionnel, - reconnaître comment éviter les mélanges et les recalculs dans Spark, Contexte recommandé : Vous devez avoir au moins un an d'expérience en programmation. La maîtrise de Java ou de C# est idéale, mais une expérience dans d'autres langages tels que C/C++, Python, Javascript ou Ruby est également suffisante. Vous devez avoir une certaine familiarité avec l'utilisation de la ligne de commande. Ce cours est destiné à être suivi après Parallel Programming : https://www.coursera.org/learn/parprog1. Notez que cette version du cours utilise Scala 2.13. Vous pouvez trouver une version plus récente du cours qui utilise Scala 3 ici : https://www.coursera.org/learn/scala-spark-big-data
Analyse de Big Data avec Scala et Spark (version Scala 2)
Instructeur : Prof. Heather Miller
2 275 déjà inscrits
Inclus avec
Compétences que vous acquerrez
- Catégorie : Programmation en Scala
- Catégorie : Big Data
- Catégorie : SQL
- Catégorie : Apache Spark
Détails à connaître
Ajouter à votre profil LinkedIn
Découvrez comment les employés des entreprises prestigieuses maîtrisent des compétences recherchées
Obtenez un certificat professionnel
Ajoutez cette qualification à votre profil LinkedIn ou à votre CV
Partagez-le sur les réseaux sociaux et dans votre évaluation de performance
Il y a 4 modules dans ce cours
Démarrez avec Scala sur votre ordinateur. Complétez un exemple de travail pour vous familiariser avec notre méthode unique de soumission des travaux. Cette semaine, nous allons combler le fossé entre le parallélisme des données dans le scénario de mémoire partagée (appris dans le cours de programmation parallèle, prérequis) et le scénario distribué. Nous examinerons les problèmes importants qui se posent dans les systèmes distribués, comme la latence et les pannes. Nous continuerons à couvrir les bases de Spark, un framework orienté fonction pour le traitement des big data en Scala. Nous terminerons la première semaine en mettant en pratique ce que nous avons appris sur Spark en analysant immédiatement un ensemble de données du monde réel.
Inclus
7 vidéos6 lectures3 devoirs de programmation
Cette semaine, nous allons nous pencher sur un type particulier de RDD appelé RDD par paires. Avec ce type de RDD spécialisé en main, nous couvrirons les opérations essentielles sur les grands ensembles de données, telles que les réductions et les jointures.
Inclus
4 vidéos2 devoirs de programmation
Cette semaine, nous examinerons certaines des implications en termes de performances de l'utilisation d'opérations telles que les jointures. Est-il possible d'obtenir le même résultat sans avoir à payer les frais généraux liés au déplacement des données sur le réseau ? Nous répondrons à cette question en examinant comment nous pouvons partitionner nos données pour obtenir une meilleure localisation des données, ce qui nous permettra d'optimiser certains de nos travaux Spark.
Inclus
4 vidéos
Grâce à notre nouvelle compréhension du coût du mouvement des données dans un travail Spark et à notre expérience de l'optimisation des travaux pour la localité des données la semaine dernière, nous nous concentrerons cette semaine sur la façon dont nous pouvons plus facilement réaliser des optimisations similaires. Les données structurées peuvent-elles nous aider ? Nous examinerons Spark SQL et son puissant optimiseur qui utilise la structure pour appliquer des optimisations impressionnantes. Nous aborderons ensuite les DataFrames et les Datasets, qui nous permettent de combiner les RDD avec les puissantes optimisations automatiques de Spark SQL.
Inclus
5 vidéos2 devoirs de programmation
Instructeur
Offert par
Recommandé si vous êtes intéressé(e) par Algorithmes
École Polytechnique Fédérale de Lausanne
Coursera Project Network
University of California San Diego
Pour quelles raisons les étudiants sur Coursera nous choisissent-ils pour leur carrière ?
Ouvrez de nouvelles portes avec Coursera Plus
Accès illimité à 10,000+ cours de niveau international, projets pratiques et programmes de certification prêts à l'emploi - tous inclus dans votre abonnement.
Faites progresser votre carrière avec un diplôme en ligne
Obtenez un diplôme auprès d’universités de renommée mondiale - 100 % en ligne
Rejoignez plus de 3 400 entreprises mondiales qui ont choisi Coursera pour les affaires
Améliorez les compétences de vos employés pour exceller dans l’économie numérique
Foire Aux Questions
L'accès aux cours et aux devoirs dépend de votre type d'inscription. Si vous suivez un cours en mode audit, vous pourrez consulter gratuitement la plupart des supports de cours. Pour accéder aux devoirs notés et obtenir un certificat, vous devrez acheter l'expérience de certificat, pendant ou après votre audit. Si vous ne voyez pas l'option d'audit :
Il se peut que le cours ne propose pas d'option d'audit. Vous pouvez essayer un essai gratuit ou demander une aide financière.
Le cours peut proposer l'option "Cours complet, pas de certificat" à la place. Cette option vous permet de consulter tous les supports de cours, de soumettre les évaluations requises et d'obtenir une note finale. Cela signifie également que vous ne pourrez pas acheter un certificat d'expérience.
Lorsque vous achetez un certificat, vous avez accès à tous les supports de cours, y compris les devoirs notés. Une fois le cours terminé, votre certificat électronique sera ajouté à votre page de réalisations. Vous pourrez alors l'imprimer ou l'ajouter à votre profil LinkedIn. Si vous souhaitez uniquement lire et visualiser le contenu du cours, vous pouvez l'auditer gratuitement.
Vous pouvez prétendre à un remboursement intégral jusqu'à deux semaines après la date de votre paiement ou (pour les cours qui viennent d'être lancés) jusqu'à deux semaines après le début de la première session du cours, la date la plus tardive étant retenue. Vous ne pouvez pas obtenir de remboursement une fois que vous avez obtenu un certificat de cours, même si vous terminez le cours pendant la période de remboursement de deux semaines. Consultez notre politique de remboursement complète.