Spark est une plateforme de traitement distribué conçue pour une grande rapidité et une flexibilité d'utilisation via des APIs pour manipuler des données. Elle intègre différentes bibliothèques pour des tâches comme le traitement en temps réel (Spark Streaming), l'analyse de graphes (GraphX), et le machine learning (MLlib). Spark fonctionne efficacement en utilisant des RDDs (Resilient Distributed Datasets) qui représentent des collections de données distribuées, et emploie un modèle maître-esclave pour la gestion des tâches au sein d'un cluster.