-
Book Overview & Buying
-
Table Of Contents
Data Engineering with Scala and Spark
By :
Data Engineering with Scala and Spark
By:
Overview of this book
Most data engineers know that performance issues in a distributed computing environment can easily lead to issues impacting the overall efficiency and effectiveness of data engineering tasks. While Python remains a popular choice for data engineering due to its ease of use, Scala shines in scenarios where the performance of distributed data processing is paramount.
This book will teach you how to leverage the Scala programming language on the Spark framework and use the latest cloud technologies to build continuous and triggered data pipelines. You’ll do this by setting up a data engineering environment for local development and scalable distributed cloud deployments using data engineering best practices, test-driven development, and CI/CD. You’ll also get to grips with DataFrame API, Dataset API, and Spark SQL API and its use. Data profiling and quality in Scala will also be covered, alongside techniques for orchestrating and performance tuning your end-to-end pipelines to deliver data to your end users.
By the end of this book, you will be able to build streaming and batch data pipelines using Scala while following software engineering best practices.
Table of Contents (21 chapters)
Preface
Part 1 – Introduction to Data Engineering, Scala, and an Environment Setup
Chapter 1: Scala Essentials for Data Engineers
Chapter 2: Environment Setup
Part 2 – Data Ingestion, Transformation, Cleansing, and Profiling Using Scala and Spark
Chapter 3: An Introduction to Apache Spark and Its APIs – DataFrame, Dataset, and Spark SQL
Chapter 4: Working with Databases
Chapter 5: Object Stores and Data Lakes
Chapter 6: Understanding Data Transformation
Chapter 7: Data Profiling and Data Quality
Part 3 – Software Engineering Best Practices for Data Engineering in Scala
Chapter 8: Test-Driven Development, Code Health, and Maintainability
Chapter 9: CI/CD with GitHub
Part 4 – Productionalizing Data Engineering Pipelines – Orchestration and Tuning
Chapter 10: Data Pipeline Orchestration
Chapter 11: Performance Tuning
Part 5 – End-to-End Data Pipelines
Chapter 12: Building Batch Pipelines Using Spark and Scala
Chapter 13: Building Streaming Pipelines Using Spark and Scala
Index