In this chapter, we learned about Apache Spark, its architecture, and Spark ecosystem in brief. Our focus was on covering different ways we can integrate Kafka with Spark and their advantages and disadvantages. We also covered APIs for the receiver-based approach and direct approach. Finally, we covered a small use case about IP fraud detection through the log file and lookup service. You can now create your own Spark streaming application.
In the next chapter, we will cover another real-time streaming application, Apache Heron (successor of Apache Storm). We will cover how Apache Heron is different from Apache Spark and when to use which one.
![country flag](/images/countries/us.png)
![country flag](/images/countries/gb.png)
![country flag](/images/countries/india.png)
![country flag](/images/countries/germany.png)
![country flag](/images/countries/france.png)
![country flag](/images/countries/canada.png)
![country flag](/images/countries/russia.png)
![country flag](/images/countries/spain.png)
![country flag](/images/countries/brazil.png)
![country flag](/images/countries/australia.png)
![country flag](/images/countries/singapore.png)
![country flag](/images/countries/hungary.png)
![country flag](/images/countries/philippines.png)
![country flag](/images/countries/mexico.png)
![country flag](/images/countries/thailand.png)
![country flag](/images/countries/ukraine.png)
![country flag](/images/countries/lux.png)
![country flag](/images/countries/estonia.png)
![country flag](/images/countries/lithuania.png)
![country flag](/images/countries/norway.png)
![country flag](/images/countries/chile.png)
![country flag](/images/countries/southkorea.png)
![country flag](/images/countries/ecuador.png)
![country flag](/images/countries/colombia.png)
![country flag](/images/countries/taiwan.png)
![country flag](/images/countries/switzerland.png)
![country flag](/images/countries/indonesia.png)
![country flag](/images/countries/cyprus.png)
![country flag](/images/countries/denmark.png)
![country flag](/images/countries/finland.png)
![country flag](/images/countries/poland.png)
![country flag](/images/countries/malta.png)
![country flag](/images/countries/czech.png)
![country flag](/images/countries/newzealand.png)
![country flag](/images/countries/austria.png)
![country flag](/images/countries/turkey.png)
![country flag](/images/countries/sweden.png)
![country flag](/images/countries/italy.png)
![country flag](/images/countries/egypt.png)
![country flag](/images/countries/belgium.png)
![country flag](/images/countries/portugal.png)
![country flag](/images/countries/slovenia.png)
![country flag](/images/countries/ireland.png)
![country flag](/images/countries/romania.png)
![country flag](/images/countries/greece.png)
![country flag](/images/countries/argentina.png)
![country flag](/images/countries/malaysia.png)
![country flag](/images/countries/southafrica.png)
![country flag](/images/countries/netherlands.png)
![country flag](https://cdn.packtpub.com/flag/004da5c4-583f-4e69-a0a8-0e999f350f90_128px-Flag_of_Bulgaria.png)
![country flag](/images/countries/latvia.png)
![country flag](/images/countries/japan.png)
![country flag](/images/countries/slovakia.png)