El código base del proyecto Spark fue donado más tarde a la Apache Software Foundation que se encarga de su mantenimiento desde entonces.
Spark fue desarrollado en sus inicios por Matei Zaharia en el AMPLab de la UC Berkeley en 2009.
[11][12] la tecnología RDD todavía está presente en la base de la API DataSet.
La latencia de estas aplicaciones se puede reducir en varios órdenes de magnitud en comparación con la implementación basada en MapReduce (comúnmente utilizada por ejemplo en los stacks basados en Apache Hadoop.
Para la gestión del clúster, Spark soporta las opciones siguientes: Para el almacenamiento distribuido, Spark presenta interfaces hacia una gran variedad de plataformas: Spark también soporta un modo local pseudo-distribuido, normalmente utilizado solamente para pruebas o en entornos de desarrollo donde el almacenamiento distribuido no es obligatorio y se puede usar el sistema de archivos local; en un escenarion como este, Spark se ejecuta en una única máquina con un executor por cada core de CPU.