Apache Spark: Lightning-Fast Distributed Computing with a Learning Curve
Use Cases and Deployment Scope
Pros
- Fault-tolerant systems: in most cases, no node fails. If it fails - the processing still continues.
- Scalable to any extent.
- Has built-in machine learning library called - MLlib
- Very flexible - data from various data sources can be used. Usage with HDFS is very easy
Cons
- Its fully not backward compatible.
- It is memory-consuming for heavy and large workloads and datasets
- Support for advanced analytics is not available - MLlib has minimalistic analytics.
- Deployment is a complex task for beginners.
Likelihood to Recommend
Less appropriate: We had to work on a RecSys where the music dataset that we used was around 300+Gb in size. We faced memory-based issues. Few times we also got memory errors. Also the MLlib library does not have support for advanced analytics and deep-learning frameworks support. Understanding the internals of the working of Apache Spark for beginners is highly not possible.

