For the last few years, I have had the opportunity to work on some of the coolest Apache Spark committers, contributors, and projects. As luck would have it, I got the opportunity to meet my co-author Tomasz Drabas (author of the awesome Practical Data Analysis Cookbook) while we were solving some other cool Apache Spark projects. In the process, we joined forces to share our lessons learned that will hopefully help you jump start your Python and Apache Spark projects with our book: Learning PySpark.
And just to make sure, this book was reviewed by the incomparable Holden Karau, author of the often referenced Learning Spark and the awesome High Performance Spark (she also wrote the foreword to our book!)
Apache Spark is an open source framework for efficient cluster computing with a strong interface for data parallelism and fault tolerance. This book will show you to leverage the power of Python and put it to use int he Spark ecosystem. You will start by getting a firm understanding of the Spark 2.0 architecture and how to set up a Python environment for Spark.
You will get familiar with the modules available in PySpark. You will learn how to abstract data with RDDs and DataFrames and understand the streaming capabilities of PySpark. Also, you will get a thorough overview of machine learning capabilities of PySpark using ML and MLlib, graph processing using GraphFrames, and polyglot persistence using Blaze. Finally you will learn how to deploy your applications to the cloud using spark-submit command.
By the end of the book, you will have established a firm understanding of the Spark Python API and how it can be used to build data-intensive applications.
Things you will learn include:
- Learn about Apache Spark and the Spark 2.0 architecture
- Build and interact with Spark DataFrames using Spark SQL
- Learn how to solve graph and deep learning problems using GraphFrames and TensorFrames respectively
- Read, transform, and understand data and use it to train machine learning models
- Build machine learning models with MLlib and ML
- Learn how to submit your applications programmatically using spark-submit
- Deploy locally build applications to a cluster
To get access to the code for the book, please refer to our GitHub repository at: https://github.com/drabastomek/learningPySpark