Développé en 2009 à l'Université de Californie à Berkeley, Apache Spark est un système de calcul en cluster rapide et généraliste. Il est conçu pour le big data et axé sur la vitesse, la simplicité d'utilisation et l'analytique avancé. Il fournit des API de haut niveau en Scala, Java, Python et R, ainsi qu'un moteur optimisé qui prend en charge des graphes de calcul généraux pour l'analyse de données. Il fonctionne également avec d'autres outils, comme Spark SQL pour le SQL et les DataFrames, MLlib pour le machine learning, GraphX pour le traitement graphique et Spark Streaming pour le traitement de flux.
Pour simplifier les interactions de l'utilisateur final, Spark est proposé aux organisations sous la forme d'une plateforme de données unifiée hébergée. En l'absence d'accès direct aux ressources Spark au moyen d'applications distantes, l'utilisateur devait suivre un parcours plus long pour parvenir à la production. Afin de surmonter cet obstacle, des services ont été créés. Ils permettent à des applications distantes de se connecter à un cluster Spark via une API REST depuis n'importe où. Ces interfaces prennent en charge l'exécution de petits morceaux de code ou de programmes dans un contexte Spark exécuté localement ou dans Apache Hadoop YARN. Les interfaces de Spark hébergé sont des solutions prêtes à l'emploi. Elles facilitent l'interaction entre Spark et les services d'applications, afin de rationaliser l'architecture exigée par les applications web et mobiles interactives.
Les organisations ont désormais un moyen de surmonter les goulets d'étranglement qui les empêchent d'opérationnaliser Spark. Elles peuvent se consacrer entièrement à extraire la valeur promise par le big data.
