Skip to content
SocialAtoZ

Apache Spark

Verified

Multi-language unified engine for data engineering, data science and machine learning at scale

Not yet rated. Be the first to review Apache Spark.

Apache Spark screenshot See all screenshots
  • Deployment Cloud Based, On Premise
  • Starting price Free
  • Free trial Available
  • Best for Small Business, Medium Business, Large Enterprise

What is Apache Spark?

Apache Spark is a unified engine for large-scale data analytics, described by the project as a multi-language engine for executing data engineering, data science and machine learning on single-node machines or clusters, with Spark Connect clients published for Go, Rust and Swift alongside a Kubernetes operator and Docker images.

The unified engine framing is the substance of why Spark displaced what came before it, and it is worth understanding what it replaced.

Hadoop's original processing model required expressing every computation as a map and reduce pair, which worked for straightforward batch transformations and became painful for anything iterative. Machine learning training, graph algorithms and interactive exploration all involve passing over the same data repeatedly, and each pass meant writing intermediate results to disk and reading them back. That made a class of work impractically slow rather than merely inconvenient.

Spark kept data in memory between operations, which changed those workloads by orders of magnitude and made interactive analysis on large datasets possible for the first time.

The multi-language support is more consequential than a feature list suggests. Data engineers generally work in Scala or Java, data scientists in Python or R, and analysts in SQL. An engine addressable from all of them means one processing platform rather than a translation layer between teams, and it removes the common failure where a model developed in Python has to be rewritten by an engineer for production.

Running on a single node as well as a cluster matters for development practice, since the same code can be written and tested on a laptop before running against the full dataset.

The Kubernetes operator reflects where deployment has moved, with Spark increasingly run on general container infrastructure rather than on a dedicated Hadoop cluster.

Spark is free and open source under the Apache licence, with managed offerings from every major cloud provider.

Key Features of Apache Spark

  • Unified engine for batch and streaming
  • In-memory processing between operations
  • Data engineering pipelines
  • Machine learning workloads
  • SQL querying
  • Python, Scala, Java and R support
  • Spark Connect clients for Go, Rust and Swift
  • Single-node or cluster execution
  • Kubernetes operator
  • Official Docker images

Apache Spark Pricing

Open source

Free

Free and open source under the Apache licence.

Commercial support

Quoted on request

Managed services and commercial support are offered by cloud providers and third parties rather than by the project.

Apache Spark Specifications

Deployment
  • Cloud Based
  • On Premise
Desktop
  • Linux
  • Windows
  • Mac
Built for
  • Small Business
  • Medium Business
  • Large Enterprise
Support
  • Email
Public API
Yes
Free trial
Yes
Free plan
No
Runs in browser
No
Customisable
No

Apache Spark Screenshots

Apache Spark Reviews

No reviews yet

Used Apache Spark? Share your experience and help other buyers decide.

Apache Spark FAQs

Nothing. It is free and open source under the Apache licence, with managed offerings available from every major cloud provider at their own rates.

Hadoop's model required expressing computation as map and reduce pairs, writing intermediate results to disk on every pass. That made iterative work such as machine learning impractically slow.

By keeping data in memory between operations, which improved iterative workloads by orders of magnitude and made interactive analysis on large datasets possible for the first time.

Engineers work in Scala or Java, scientists in Python or R, analysts in SQL. One engine addressable from all of them removes the failure where a Python model must be rewritten for production.

Yes, on a single node as well as a cluster, so the same code can be developed and tested on a laptop before being run against the full dataset.