Data Engineering with Python: Work with massive datasets to design data models and automate data pipelines using Python
- Length: 357 pages
- Edition: 1
- Language: English
- Publisher: Packt Publishing
- Publication Date: 2020-10-23
- ISBN-10: 183921418X
- ISBN-13: 9781839214189
Build, monitor, and manage real-time data pipelines to create data engineering infrastructure efficiently using open-source Apache projects
Key Features
- Become well-versed in data architectures, data preparation, and data optimization skills with the help of practical examples
- Design data models and learn how to extract, transform, and load (ETL) data using Python
- Schedule, automate, and monitor complex data pipelines in production
Book Description
Data engineering provides the foundation for data science and analytics, and forms an important part of all businesses. This book will help you to explore various tools and methods that are used for understanding the data engineering process using Python.
The book will show you how to tackle challenges commonly faced in different aspects of data engineering. You’ll start with an introduction to the basics of data engineering, along with the technologies and frameworks required to build data pipelines to work with large datasets. You’ll learn how to transform and clean data and perform analytics to get the most out of your data. As you advance, you’ll discover how to work with big data of varying complexity and production databases, and build data pipelines. Using real-world examples, you’ll build architectures on which you’ll learn how to deploy data pipelines.
By the end of this Python book, you’ll have gained a clear understanding of data modeling techniques, and will be able to confidently build data engineering pipelines for tracking data, running quality checks, and making necessary changes in production.
What you will learn
- Understand how data engineering supports data science workflows
- Discover how to extract data from files and databases and then clean, transform, and enrich it
- Configure processors for handling different file formats as well as both relational and NoSQL databases
- Find out how to implement a data pipeline and dashboard to visualize results
- Use staging and validation to check data before landing in the warehouse
- Build real-time pipelines with staging areas that perform validation and handle failures
- Get to grips with deploying pipelines in the production environment
Who this book is for
This book is for data analysts, ETL developers, and anyone looking to get started with or transition to the field of data engineering or refresh their knowledge of data engineering using Python. This book will also be useful for students planning to build a career in data engineering or IT professionals preparing for a transition. No previous knowledge of data engineering is required.
Table of Contents
- What is Data Engineering?
- Building Our Data Engineering Infrastructure
- Reading and Writing Files
- Working with Databases
- Cleaning, Transforming, and Enriching Data
- Building a 311 Data Pipeline
- Features of a Production Pipeline
- Version Control Using the NiFi Registry
- Monitoring and Logging Pipelines
- Deploying your Pipelines
- Building a Production Data Pipeline
- Building a Kafka Cluster
- Streaming Data with Apache Kafka
- Data Processing with Apache Spark
- Real-Time Edge Data with MiNiFi, Kafka, and Spark
- Appendix