Refresh Your Home For Fall
To see product details, add this item to your cart. You can always remove it later.
Shipper / Seller
Amazon.com
Amazon.com
Shipper / Seller
Amazon.com
Returns
30-day refund / replacement
30-day refund / replacement
This item can be returned in its original condition for a full refund or replacement within 30 days of receipt.
Read full return policy
Payment
Secure transaction
Your transaction is secure
We work hard to protect your security and privacy. Our payment security system encrypts your information during transmission. We don’t share your credit card details with third-party sellers, and we don’t sell your information to others. Learn more
Gift options
Available at checkout
Available at checkout This item is a gift. Change
At checkout, you can add a custom message, a gift receipt for easy returns and have the item gift-wrapped
Added to

Sorry, there was a problem.

There was an error retrieving your Wish Lists. Please try again.

Sorry, there was a problem.

List unavailable.
Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera - scan the code below and download the Kindle app.

QR code to download the Kindle App

  • Data Engineering Design Patterns: Recipes for Solving the Most Common Data Engineering Problems

Follow the author

Get new release updates & improved recommendations
Something went wrong. Please try your request again later.

Data Engineering Design Patterns: Recipes for Solving the Most Common Data Engineering Problems

4.0 out of 5 stars (20)

Purchase options and add-ons

Data projects are an intrinsic part of an organization's technical ecosystem, but data engineers in many companies continue to work on problems that others have already solved. This hands-on guide shows you how to provide valuable data by focusing on various aspects of data engineering, including data ingestion, data quality, idempotency, and more.

Author Bartosz Konieczny guides you through the process of building reliable end-to-end data engineering projects, from data ingestion to data observability, focusing on data engineering design patterns that solve common business problems in a secure and storage-optimized manner. Each pattern includes a user-facing description of the problem, solutions, and consequences that place the pattern into the context of real-life scenarios.

Throughout this journey, you'll use open source data tools and public cloud services to apply each pattern. You'll learn:

  • Challenges data engineers face and their impact on data systems
  • How these challenges relate to data system components
  • Useful applications of data engineering patterns
  • How to identify and fix issues with your current data components
  • Technology-agnostic solutions to new and existing data projects, with open source implementation examples

    Bartosz Konieczny is a freelance data engineer who's been coding since 2010. He's held various senior hands-on positions that allowed him to work on many data engineering problems in batch and stream processing.

Frequently bought together

This item: Data Engineering Design Patterns: Recipes for Solving the Most Common Data Engineering Problems
$35.46
Get it as soon as Sunday, Sep 20
Only 3 left in stock (more on the way).
Ships from and sold by Amazon.com.
+
$40.00
Get it as soon as Tuesday, Sep 29
Ships from and sold by Amazon.com.
+
$50.99
Get it as soon as Sunday, Sep 20
Only 13 left in stock (more on the way).
Ships from and sold by Amazon.com.
Total price: $00
To see our price, add these items to your cart.
Details
Added to Cart
Some of these items ship sooner than the others.
Choose items to buy together.

Customers also bought or read

Loading...

From the brand


From the Publisher

Data Engineering Design Patterns

From the Preface

The Structure of This Book

This book follows the workflow of a classical data engineering project that starts with data ingestion and ends with day-to-day monitoring. The steps of the project correspond to the main chapters, so you can easily identify the stage to which each pattern in a chapter applies.

Additionally, each chapter has a two-level structure, with the levels being design pattern categories and the design patterns themselves. Why this two-level organization? First, a given data engineering problem can have at least two possible solutions, and it wouldn’t be possible to logically group them without having this first level of design pattern categories. Second, data engineering design patterns have their own names that sometimes sound mysterious, and design pattern categories provide extra application context that helps you know where to apply a particular pattern without requiring you to delve into details.

Finally, for each pattern, you’ll find the following subsections:

Problem: This subsection provides a real-world example of when you can use the pattern.

Solution: This subsection describes the pattern in more technical detail. Usually, it starts with a high-level explanation followed by the technical implementation model.

Consequences: Patterns have their trade-offs, and this section explains what you should look for before implementing them. Whenever possible, each gotcha is completed with a mitigation solution.

Examples: In this final part, you’ll find code snippets explaining how to use the pattern within the modern data engineering tools. Unfortunately, it’s not technically possible to share the pattern’s implementation in all existing data tools, so this book uses popular open source projects (Apache Spark, Apache Flink, Apache Airflow, PostgreSQL, and Delta Lake). Occasionally, the implementation extends the scope to the managed services in the public cloud. The code snippets are written in Python, SQL, and sometimes Scala or Java if the Python implementation is not available.

At the end of this book, you will find a table summarizing all the described patterns. Also, the book has a GitHub repository that includes a glossary of terms that should give you the definitions of the most frequently used acronyms in the book.

What Should I Know Prior to Reading This Book?

This book will not be a great resource if you have just started in data engineering and don’t have any commercial experience. In my opinion, a minimum of six months of commercial experience with data engineering should help you grasp the ideas more easily. Other than that, the minimum technical knowledge you’ll need to get the most out of this book is as follows:

  • Familiarity with data engineering concepts, such as extract, transform, load (ETL), extract, load, transform (ELT), data warehousing, data ingestion, and data orchestration.
  • Cloud awareness. Even though this book tends to favor open source technologies, there are places where cloud technology is more appropriate (e.g., data security). You don’t have to be a cloud expert, but you should at least be able to understand the basics, such as what a managed service is.
  • Hands-on experience with data processing logic in Java, Scala, Python, or SQL. Ideally, you have already deployed this logic in production.

If you feel like there are gaps in your knowledge of the required topics, you should be able to easily fill in the gaps by reading 'Fundamentals of Data Engineering' by Joe Reis and Matt Housley (O’Reilly, 2022). The book provides a comprehensive overview of the data engineering space that will not only help you understand the content in this book but also better prepare you to deal with the challenges you will face in your day-to-day work.

Generative AI Design Patterns
Machine Learning Design Patterns
Data Engineering Design Patterns
Cloud Application Architecture Patterns
Design Patterns for Cloud Native Applications
Head First Design Patterns
Customer Reviews
4.6 out of 5 stars 26
4.6 out of 5 stars 417
4.0 out of 5 stars 20
4.4 out of 5 stars 34
4.2 out of 5 stars 52
4.8 out of 5 stars 1,427
Design Patterns from O'Reilly Media no data no data no data no data no data no data

Editorial Reviews

About the Author

Bartosz is a freelance data engineer enthusiast who has been coding since 2010. He has held various senior hands-on positions that helped him work on many data engineering problems, such as sessionization, data ingestion, data cleansing, ordered data processing, or data migration. He enjoys solving data challenges with public cloud services and Open Source technologies, especially Apache Spark, Apache Kafka, Apache Airflow, and Delta Lake. You can contact him at contact@waitingforcode.com.

Besides that, you can read his blog posts at waitingforcode.com, or improve your data engineering skills with one of his courses or training. Bartosz is also an occasional speaker at conferences and meetups, including Data+AI Summit, Big Data Technology Warsaw Summit, or NDC Porto.

Product details

  • Publisher ‏ : ‎ O'Reilly Media
  • Publication date ‏ : ‎ May 20, 2025
  • Edition ‏ : ‎ 1st
  • Language ‏ : ‎ English
  • Print length ‏ : ‎ 372 pages
  • ISBN-10 ‏ : ‎ 1098165810
  • ISBN-13 ‏ : ‎ 978-1098165819
  • Item Weight ‏ : ‎ 1.35 pounds
  • Dimensions ‏ : ‎ 7 x 1 x 9.25 inches
  • Best Sellers Rank: #114,718 in Books (See Top 100 in Books)
  • Customer Reviews:
    4.0 out of 5 stars (20)

About the author

Follow authors to get new release updates, plus improved recommendations.
Bartosz Konieczny
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Bartosz Konieczny is a freelance data engineering enthusiast who has been coding since 2010. Throughout his career, he has leveraged major public cloud services and

open source technologies—like Apache Spark, Apache Kafka, Apache Airflow, and Delta Lake—to tackle various data engineering problems, including sessionization, data ingestion, data cleansing, ordered data processing, and data migration.

In addition to helping companies bring their data projects to life, Bartosz is deeply engaged with the data engineering community. He provides a comprehensive set of resources to support data engineers in their learning journey, including online and in-person training, data-related blog posts on waitingforcode, and conference talks at industry events like the Spark+AI Summit, the Data+AI Summit, and the Big Data Technology Warsaw Summit.