Apache Spark
Apache Spark is an open-source distributed computing engine for large-scale data processing, analytics, machine learning, graph workloads, and streaming.
Last updated August 28, 2026
Overview
Apache Spark is an open-source software project and technology brand centered on a distributed processing engine for large-scale data workloads. It originated in 2009 at the University of California, Berkeley’s AMPLab, where Matei Zaharia and collaborators were seeking a more flexible and efficient way to support iterative algorithms and interactive analytics than conventional disk-heavy MapReduce workflows. Spark was released as open source in 2010 and later moved into the Apache Software Foundation, becoming an Apache top-level project in 2014. Spark’s central design idea is to provide a unified programming model for several classes of data work. Its execution engine can process batch data, interactive queries, continuously arriving records, machine-learning workloads, and graph computations through a common distributed framework. In-memory caching and optimized execution plans can reduce repeated disk access for iterative jobs, while its APIs allow developers to write applications in Scala, Java, Python, R, and SQL. Spark can operate in standalone mode or on cluster and cloud infrastructure including Hadoop YARN, Kubernetes, and Apache Mesos, and it can read from systems such as HDFS, Amazon S3, Apache Cassandra, Apache HBase, Apache Hive, and other data sources. The project’s principal software components have included Spark Core for distributed execution and resilient data abstractions; Spark SQL for structured data processing and SQL queries; Structured Streaming for stream processing; MLlib for scalable machine learning; and GraphX for graph computation. PySpark, the Python interface, has become particularly important for data scientists and engineering teams that work in Python-based analytics environments. Together, these components position Spark as a general-purpose analytics platform rather than a single-purpose database or message broker. Apache Spark is not a conventional commercial company with independent shareholders, a stock ticker, or a standard corporate headquarters. It is a community-developed Apache project governed through the Apache Software Foundation’s open-source processes. Commercial companies, cloud providers, systems integrators, and research organizations build services, distributions, connectors, and managed offerings around it. Databricks, founded by several original Spark contributors, is one of the most prominent commercial companies associated with the project, but Apache Spark itself remains an Apache Software Foundation project rather than a Databricks-owned product. The technology is used across financial services, advertising, media, retail, telecommunications, healthcare, internet services, and public-sector analytics. Reported use cases include recommendation systems, advertising prediction and bidding, customer-churn modeling, clickstream analysis, inventory forecasting, network optimization, anomaly detection, fraud analysis, and near-real-time monitoring. Organizations cited in public technology case studies include Yelp, The Washington Post, GumGum, Hearst, Sharethrough, Shopify, Conviva, and Netflix. These examples illustrate Spark’s positioning as infrastructure for teams that need to combine large-scale data engineering with advanced analytics and machine learning. Spark’s ecosystem has evolved alongside cloud data platforms, data lakes, lakehouse architectures, container orchestration, and modern machine-learning operations. Its open-source licensing and broad language support have encouraged adoption in both self-managed clusters and managed services offered by major cloud providers. The project’s continuing relevance depends on its community, compatibility with changing storage and compute systems, execution performance, and ability to provide a common foundation for batch, streaming, SQL, and machine-learning workloads.
History
Apache Spark began in 2009 at UC Berkeley’s AMPLab, a research laboratory focused on algorithms, machines, and people. Matei Zaharia and other researchers developed the project in response to limitations they encountered with Hadoop MapReduce and similar disk-oriented systems. Iterative algorithms, interactive analysis, and machine-learning workloads could require repeated passes over the same data, making a strictly disk-based execution model inefficient. Spark was designed to retain intermediate data in memory when practical while offering a broader and more programmable cluster-computing model. The project was open-sourced in 2010 under a permissive license. Its early development emphasized a resilient distributed dataset abstraction, which allowed distributed collections to be reconstructed after failures and reused across operations. This design helped Spark combine fault tolerance with faster iterative processing. The project initially gained attention in research and big-data communities, then expanded through language bindings, libraries, connectors, and integration with Hadoop storage and scheduling systems. Spark’s scope broadened as its ecosystem matured. Spark SQL brought structured data and SQL-style queries to the engine. MLlib provided distributed implementations of machine-learning algorithms. GraphX addressed graph analytics, while Spark Streaming enabled applications to process continuously arriving data. Later Structured Streaming provided a higher-level model for stream-processing applications using Spark’s structured APIs. PySpark made the system accessible to Python users, including data scientists and engineers working with notebook-based workflows. In June 2013, Spark was accepted into the Apache Incubator. The move placed the project under the Apache Software Foundation’s governance and created a broader community beyond its original university setting. In February 2014, Spark graduated to become an Apache top-level project. This transition was an important organizational turning point: Spark’s direction, releases, and community processes became part of a meritocratic open-source ecosystem rather than being managed solely as a university research effort. Version 1.0.0 followed in May 2014. During the mid-to-late 2010s, Spark became a major component of enterprise big-data stacks. It could run on standalone clusters, Hadoop YARN, Apache Mesos, and later Kubernetes, while connecting with storage and database technologies such as HDFS, Hive, Cassandra, HBase, and Amazon S3. Its common APIs allowed organizations to reuse concepts and, in many cases, code across batch, SQL, machine-learning, and streaming workloads. This unified approach distinguished Spark from systems focused only on batch execution, stream transport, or database querying. The project also contributed to the formation of a commercial ecosystem. Databricks was founded in 2013 by members of the original Spark team and became a major commercial provider of hosted and enterprise data platforms built around Spark and related open-source technologies. Cloud providers incorporated Spark into managed cluster and analytics services, lowering the operational barrier for organizations that did not want to administer their own distributed infrastructure. Independent vendors developed connectors and integration tools for advertising systems, CRM platforms, cloud storage, data warehouses, and business applications. Public case studies show Spark being used for recommendation engines, advertising optimization, real-time media analytics, inventory forecasting, clickstream processing, customer-retention analysis, and machine-learning model training. Yelp has been cited for advertising prediction workloads on Amazon EMR; The Washington Post for recommendation models; GumGum for forecasting and log analysis; Hearst for streaming editorial analytics; Sharethrough for advertising targeting and creative optimization; and companies such as Shopify, Conviva, and Netflix for large-scale analytics or personalization-related applications. These examples represent user deployments and integrations rather than ownership of Apache Spark by those organizations. Today, Apache Spark remains an active open-source project and a recognized brand in data engineering and analytics infrastructure. Its competitive environment includes distributed SQL engines, stream-processing platforms, cloud-native data warehouses, lakehouse systems, and other open-source frameworks. Spark’s enduring role is based on its breadth, language support, integration range, and large community. At the same time, deployments still require choices about cluster management, storage formats, streaming semantics, resource allocation, data governance, and workload specialization. Apache Spark therefore functions both as a standalone engine and as a foundational processing layer inside broader data platforms.
- 2014Spark became an Apache top-level project
Spark graduated from incubation and became a top-level Apache project.
- 2014Spark 1.0.0 released
The project published its 1.0.0 release, marking an early major version milestone.
- 2013Spark entered the Apache Incubator
Apache Spark was accepted into the Apache Software Foundation’s Incubator as part of its transition to foundation governance.
- 2010Spark released as open source
The project was made available to the wider developer and research community, enabling external contribution and adoption.
- 2009Spark created at UC Berkeley’s AMPLab
Matei Zaharia and collaborators began developing Spark at the University of California, Berkeley’s AMPLab to improve support for iterative and interactive distributed workloads.
Products and positioning
Open-source unified analytics infrastructure for distributed data processing, combining batch computation, SQL, streaming, machine learning, and graph processing in one ecosystem.
Spark CoreDistributed computing engine
Spark Core provides the fundamental distributed execution capabilities, scheduling, fault tolerance, APIs, and data abstractions used by the rest of the Spark ecosystem. It enables applications to divide work across clusters and recover from failures while supporting integration with multiple storage systems and deployment managers.
Spark SQLStructured data analytics
Spark SQL adds structured-data processing, SQL queries, data-frame APIs, and optimized query execution to Spark. It allows engineering and analytics teams to work with relational data, semi-structured sources, and programmatic transformations within the same distributed environment.
Structured StreamingStream processing
Structured Streaming provides a high-level stream-processing model built on Spark’s structured APIs. It supports continuously updated computations over incoming data and is used for monitoring, event processing, real-time scoring, recommendation systems, and other applications that combine streaming input with batch-oriented analytics.
MLlibMachine learning
MLlib is Spark’s scalable machine-learning library. It supplies distributed algorithms and utilities for tasks such as classification, regression, clustering, recommendation, feature engineering, and model evaluation, allowing teams to train models close to the data processed by Spark.
GraphXGraph processing
GraphX extends Spark for graph computation and graph-parallel analysis. It supports graph algorithms and transformations while allowing graph workloads to interact with Spark’s broader data-processing abstractions.
PySparkPython API
PySpark is Spark’s Python interface, enabling developers and data scientists to use Spark’s distributed processing, SQL, streaming, and machine-learning capabilities from Python applications, notebooks, and production pipelines.
Flagship businesses
- Spark Core
- Spark SQL
- Structured Streaming
- MLlib
- GraphX
- PySpark
Marketing campaigns
- 2014Sharethrough Spark Streaming deployment
United States · Advertising technology
Sharethrough described expanding its use of Spark Streaming for native advertising operations, including audience targeting, creative optimization, content-quality scoring, spend tracking, and real-time bidding workflows.
Outcome. The case study presented Spark Streaming as part of Sharethrough’s effort to make advertising optimization more responsive and scalable.
- Apache Spark on Amazon EMR customer use cases
Global · Cloud computing · Media · Advertising · Internet services
Amazon Web Services has highlighted deployments involving Yelp, The Washington Post, GumGum, and Hearst. Reported applications include advertising prediction and model training, recommendation engines, inventory forecasting, clickstream and unstructured-data analysis, and near-real-time editorial trend monitoring.
Outcome. The examples illustrate how managed Spark clusters can support machine learning, streaming analytics, and large-scale data processing across different industries.
Brand decisions
- 2014Release of Apache Spark 1.0.0Product launch
After incubation and growing adoption, the project reached an early major release milestone.
What changed. The Spark community published version 1.0.0.
Aftermath. The release reinforced Spark’s positioning as a general-purpose engine for distributed data processing and analytics.
- 2013Donation of Spark to the Apache Software FoundationStrategy
As Spark expanded beyond its original academic setting, its maintainers sought a neutral open-source home with established community governance.
What changed. The project entered the Apache Incubator and began its transition into the Apache Software Foundation ecosystem.
Aftermath. Spark later graduated as an Apache top-level project, strengthening its independent community governance and broadening participation.
Recent events
- 2014Apache Spark graduated as an Apache top-level project
Spark graduated from the Apache Incubator and became a top-level Apache project, formalizing its governance and community status within the foundation.
Other - 2014Apache Spark 1.0.0 released
The project announced the 1.0.0 release, an early major version milestone in Spark’s development as a general-purpose distributed analytics engine.
Product launchProduct generation - 2013Apache Spark accepted into the Apache Incubator
The Spark project entered the Apache Incubator, beginning its transition from a Berkeley research project into an Apache Software Foundation community project.
Other
Sources
Cite this profile: Cite the canonical profile. /brand-wiki/apache-spark · Editorial policy · How profiles are compiled