Hadoop refers to an ecosystem which contains MapReduce. Batch processing is processing with a large volume of data at once. Batch Processing stores data in a disk. Then process them using MapReduce technologies like Hadoop and Spark. Batch processing is efficient in processing high volume data. The collected data entered to the system, processed and results are produced in batches. The time consumed for the processing is not an issue. Batch jobs are configured to run without manual intervention. Depending on the size of the data and the computing power, output “speed” can be delayed. So, it is not well suited for responding to data fast. MapReduce is a batch-oriented data processing paradigm. Around the year 2005, Hadoop had revolutionary MapReduce framework. Hadoop MapReduce still is the best framework for processing data in batches. Batch Processing these days performed mostly on the archival data to perform Big Data analytics. Under the batch processing model, a set of data is collected over time and fed into an analytics system. So we collect a batch of information, then send it in for processing.
Stream processing involves continual input and outcome of data. Real-time system and stream processing systems are different concepts. After the year 2014, Spark overtook Hadoop. The interesting part for Spark was it can process data in real time and the speed was 100 times faster than Hadoop MapReduce. Spark is also a part of the Hadoop system. Spark Streaming is a stream processing system. Hadoop is a complete ecosystem and MapReduce is the Batch Processing System of the Hadoop ecosystem. And Spark is also a batch processing system if we go to origin but one of its libraries is Spark Streaming. Under the streaming model, data is fed into analytics tools piece-by-piece. Then the processing is usually done in real time.
The above discussion probably gives a clear-cut idea about the timeline of the introduction of different systems and also why such a question is often raised. The difference in processing between Spark and Hadoop exists. Batch Processing excels at data persistence and that is why in many of the cases it is maintained as a layer.