Big data is a term that describes the large volume of data – both structured and unstructured. Hadoop and Apache Spark are both big–data frameworks. Apache Spark is an open source big data processing framework built around speed, ease of use, and sophisticated analytics. Spark has several advantages compared to other big data and MapReduce technologies like Hadoop and Storm. Spark can be deployed in a variety of ways, provides native bindings for the Java, Scala, Python, and R programming languages, and supports SQL, streaming data, machine learning, and graph processing.
Apache Spark is basically a parallel data processing framework that can work with Apache Hadoop to make it extremely easy to develop fast, Big Data applications combining batch, streaming, and interactive analytics on all your data.
Features of Apache Spark: Swift Processing, Dynamic in Nature, In-Memory Computation in Spark, Reusability, Fault Tolerance in Spark, Real-Time Stream Processing, Lazy Evaluation in Apache Spark, Support Multiple Languages, Active, Progressive and Expanding Spark Community, Support for Sophisticated Analysis, Integrated with Hadoop, Spark GraphX, Cost Efficient.
In conclusion, Apache Spark is the most advanced and popular product of Apache Community that provides the provision to work with the streaming data, has various Machine learning library, can work on structured and unstructured data, deal with graph etc.