This document provides an overview of Apache Spark, including: - The problems of big data that Spark addresses like large volumes of data from various sources. - A comparison of Spark to existing techniques like Hadoop, noting Spark allows for better developer productivity and performance. - An overview of the Spark ecosystem and how Spark can integrate with an existing enterprise. - Details about Spark's programming model including its RDD abstraction and use of transformations and actions. - A discussion of Spark's execution model involving stages and tasks.