▶Book Description
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 how to leverage the power of Python and put it to use in the 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 the spark-submit command.
By the end of this book, you will have established a firm understanding of the Spark Python API and how it can be used to build data-intensive applications.
▶About This Book
⦁ Learn why and how you can efficiently use Python to process data and build machine learning models in Apache Spark 2.0
⦁ Develop and deploy efficient, scalable real-time Spark solutions
⦁ Take your understanding of using Spark with Python to the next level with this jump start guide
▶Who This Book Is For
This book is for everyone who wants to learn the fastest-growing technology in big data: Apache Spark. We hope that even the more advanced practitioners from the field of data science can find some of the examples refreshing and the more advanced topics interesting.
▶What You Will Learn
⦁ 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 built applications to a cluster
▶Style and approach
This book takes a very comprehensive, step-by-step approach so you understand how the Spark ecosystem can be used with Python to develop efficient, scalable solutions. Every chapter is standalone and written in a very easy-to-understand manner, with a focus on both the hows and the whys of each concept.
▶What this book covers
⦁ Chapter 1, Understanding Spark, provides an introduction into the Spark world with an overview of the technology and the jobs organization concepts.
⦁ Chapter 2, Resilient Distributed Datasets, covers RDDs, the fundamental, schema-less data structure available in PySpark.
⦁ Chapter 3, DataFrames, provides a detailed overview of a data structure that bridges the gap between Scala and Python in terms of efficiency.
⦁ Chapter 4, Prepare Data for Modeling, guides the reader through the process of cleaning up and transforming data in the Spark environment.
⦁ Chapter 5, Introducing MLlib, introduces the machine learning library that works on RDDs and reviews the most useful machine learning models.
⦁ Chapter 6, Introducing the ML Package, covers the current mainstream machine learning library and provides an overview of all the models currently available.
⦁ Chapter 7, GraphFrames, will guide you through the new structure that makes solving problems with graphs easy.
⦁ Chapter 8, TensorFrames, introduces the bridge between Spark and the Deep Learning world of TensorFlow.
⦁ Chapter 9, Polyglot Persistence with Blaze, describes how Blaze can be paired with Spark for even easier abstraction of data from various sources.
⦁ Chapter 10, Structured Streaming, provides an overview of streaming tools available in PySpark.
⦁ Chapter 11, Packaging Spark Applications, will guide you through the steps of modularizing your code and submitting it for execution to Spark through command-line interface.