Résumé
Spark (ou Apache Spark) est un framework open source de calcul distribué. Il s'agit d'un ensemble d'outils et de composants logiciels structurés selon une architecture définie. Développé à l'université de Californie à Berkeley par AMPLab, Spark est aujourd'hui un projet de la fondation Apache. Ce produit est un cadre applicatif de traitements des mégadonnées (big data) pour effectuer des analyses complexes à grande échelle. En 2009, Spark fut conçu par lors de son doctorat au sein de l'université de Californie à Berkeley. À l'origine son développement est une solution pour accélérer le traitement des systèmes Hadoop. Les développeurs mettent notamment en avant la rapidité du produit en termes d'exécution des tâches par rapport à MapReduce. En 2013, transmis à la fondation Apache, Spark devient l'un des projets les plus actifs de cette dernière. En 2014, Spark a gagné le Daytona GraySort Contest dont l'objectif est de trier de données le plus rapidement possible. Ce record était préalablement détenu par Hadoop. Pour ce faire, Spark a utilisé obtenant un temps d'exécution final de alors que Hadoop avait lui utilisé pour un temps d'exécution final de . La puissance de Spark fut démontrée en étant plus rapide et en utilisant approximativement moins de machines. Les contributeurs qui participent à son développement sont nombreux et issus d'environ 200 sociétés différentes, comme Intel, Facebook, IBM, SyFantasy, et Netflix. Ainsi depuis 2015 on recense plus de . Spark réalise une lecture des données au niveau du cluster (grappe de serveurs sur un réseau), effectue toutes les opérations d'analyse nécessaires, puis écrit les résultats à ce même niveau. Malgré le fait que les tâches s'écrivent avec les langages Scala, Java et Python, il utilise au mieux ses capacités avec son langage natif, Scala. De ce fait, là où le MapReduce de Hadoop travaille par étape, Spark peut travailler sur la totalité des données en même temps. Il est donc jusqu'à dix fois plus rapide pour le traitement en lots et jusqu'à cent fois plus rapide pour effectuer l'analyse en mémoire.
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (8)
COM-490: Large-scale data science for real-world data
This hands-on course teaches the tools & methods used by data scientists, from researching solutions to scaling up prototypes to Spark clusters. It exposes the students to the entire data science pipe
COM-308: Internet analytics
Internet analytics is the collection, modeling, and analysis of user data in large-scale online services, such as social networking, e-commerce, search, and advertisement. This class explores a number
CS-401: Applied data analysis
This course teaches the basic techniques, methodologies, and practical skills required to draw meaningful insights from a variety of data, with the help of the most acclaimed software tools in the dat
Afficher plus
Publications associées (42)
Concepts associés (14)
Pile technologique
In computing, a solution stack or software stack is a set of software subsystems or components needed to create a complete platform such that no additional software is needed to support applications. Applications are said to "run on" or "run on top of" the resulting platform. For example, to develop a web application, the architect defines the stack as the target operating system, web server, database, and programming language. Another version of a software stack is operating system, middleware, database, and applications.
Lac de données
Un lac de données (en anglais data lake) est une méthode de stockage de données massives utilisée par le big data (mégadonnées en français). Ces données sont gardées dans leurs formats originaux ou sont très peu transformées. Le lac de données donne la priorité au stockage rapide et volumineux de données hétérogènes en adoptant une architecture en cluster. Il n'est pas optimisé pour les requêtes SQL comme les SGBD relationnels classiques, et s'écarte des Propriétés ACID traditionnelles. On parle depuis 2010 de SGBD NoSQL.
Notebook (programmation)
vignette|Notebook du logiciel informatique IPython.|338x338px En programmation informatique, un notebook, aussi fréquemment appelé calepin électronique, voire simplement calepin est une interface de permettant de combiner des sections en langage naturel et des sections en langage informatique. Les notebooks sont notamment utilisés en science des données pour explorer et analyser des données. Les notebooks peuvent ensuite être enregistrés sous forme de document. C'est un exemple de programmation lettrée.
Afficher plus