Apache Spark es un marco informático de clúster de código abierto para el procesamiento en tiempo real. Tiene una próspera comunidad de código abierto y es el proyecto Apache más activo en este momento. Spark proporciona una interfaz para programar clústeres completos con paralelismo de datos implícito y tolerancia a fallas.

Fue construido sobre Hadoop MapReduce y extiende el modelo MapReduce para usarlo de manera más eficiente y con más tipos de cálculos.

Las característica de Spark son las siguientes:
- Políglota:
- Spark proporciona un API de alto nivel en Java, Scala, Python y R. El código de Spark se puede escribir en cualquiera de estos cuatro lenguajes.
 - Proporciona un shell en Scala y en Python.
 - Desde el directorio instalado se puede acceder al shell de Scala y al shell de Python a través de ./bin/spark-shell y de ./bin/pyspark respectivamente.
 
 - Velocidad:
- Para el procesamiento de datos a gran escala, Spark se ejecuta hasta 100 veces más rápido que Hadoop MapReduce.
 - Spark puede lograr esta velocidad a través de la partición controlada.
 - Administra los datos mediante particiones que ayudan a paralelizar el procesamiento de datos distribuidos con un tráfico de red mínimo.
 
 - Evaluación perezosa :
- Apache Spark retrasa su evaluación hasta que sea absolutamente necesario. Este es uno de los factores clave que contribuyen a su velocidad.
 - Spark agrega las transformaciones a un DAG (Gráfico acíclico dirigido) de cálculo y solo cuando el controlador solicita algún dato se ejecuta el DAG.
 
 - Integración Hadoop :
- Apache Spark proporciona una compatibilidad fluida con Hadoop.
 - Spark es un reemplazo potencial para las funciones de MapReduce de Hadoop.
 - Para la programación de recursos, Spark tiene la capacidad de ejecutarse sobre un clúster de Hadoop existente usando YARN.
 
 - Aprendizaje automático :
- MLlib de Spark es el componente de aprendizaje automático, útil cuando se trata de procesamiento de Big Data.
 - Erradica la necesidad de usar múltiples herramientas; una para procesamiento y otra para aprendizaje automático.
 - Spark proporciona a los ingenieros y científicos de datos un motor potente y unificado rápido y fácil de usar.