Data Engineering with dbt

by Roberto Zagni

Data Science

Book Details

Book Title

Data Engineering with dbt

Author

Roberto Zagni

Publisher

Packt Publishing Pvt. Ltd

Publication Date

2023

ISBN

9781803246284

Number of Pages

599

Language

English

Format

PDF

File Size

6.8MB

Subject

Data Transformation

Table of Contents

  • Data Engineering with dbt
  • Contributors
  • About the author
  • About the reviewers
  • Preface
  • Part 1: The Foundations of Data Engineering
  • Chapter 1: The Basics of SQL to Transform Data
  • Technical requirements
  • Introducing SQL
  • SQL basics – core concepts and commands
  • Setting up a Snowflake database with users and roles
  • Querying data in SQL – syntax and operators
  • Combining data in SQL – the JOIN clause
  • Advanced – introducing window functions
  • Summary
  • Further reading
  • Chapter 2: Setting Up Your dbt Cloud Development Environment
  • Technical requirements
  • Setting up your GitHub account
  • Setting up your dbt Cloud account
  • Comparing dbt Core and dbt Cloud workflows
  • Experimenting with SQL in dbt Cloud
  • Introducing the source and ref dbt functions
  • Summary
  • Further reading
  • Chapter 3: Data Modeling for Data Engineering
  • Technical requirements
  • What is and why do we need data modeling?
  • Conceptual, logical, and physical data models
  • Entity-Relationship modeling
  • Modeling use cases and patterns
  • Common problems in data models
  • Modeling styles and architectures
  • Summary
  • Further reading
  • Chapter 4: Analytics Engineering as the New Core of Data Engineering
  • Technical requirements
  • The data life cycle and its evolution
  • Understanding the modern data stack
  • Defining analytics engineering
  • DataOps – software engineering best practices for data
  • Summary
  • Further reading
  • Chapter 5: Transforming Data with dbt
  • Technical requirements
  • The dbt Core workflow for ingesting and transforming data
  • Introducing our stock tracking project
  • Defining data sources and providing reference data
  • How to write and test transformations
  • Summary
  • Part 2: Agile Data Engineering with dbt
  • Chapter 6: Writing Maintainable Code
  • Technical requirements
  • Writing code for humans
  • Creating the architectural layers
  • Saving history is crucial
  • Summary
  • Chapter 7: Working with Dimensional Data
  • Adding dimensional data
  • Loading the data of the first dimension
  • Building the STG model for the first dimension
  • Saving history for the dimensional data
  • Building the REF layer with the dimensional data
  • Adding the dimensional data to the data mart
  • Exercise – adding a few more hand-maintained dimensions
  • Summary
  • Chapter 8: Delivering Consistency in Your Data
  • Technical requirements
  • Keeping consistency by reusing code – macros
  • Building on the shoulders of giants – dbt packages
  • Summary
  • Chapter 9: Delivering Reliability in Your Data
  • Testing to provide reliability
  • Testing the right things in the right places
  • Summary
  • Chapter 10: Agile Development
  • Technical requirements
  • Agile development and collaboration
  • Applying agile to data engineering
  • Building reports in an agile way
  • Summary
  • Chapter 11: Team Collaboration
  • Enabling collaboration
  • Working with branches and PRs
  • Working with Git in dbt Cloud
  • Making your first PR
  • Summary
  • Further reading
  • Part 3: Hands-On Best Practices for Simple, Future-Proof Data Platforms
  • Chapter 12: Deployment, Execution, and Documentation Automation
  • Technical requirements
  • Designing your deployment automation
  • Advanced automation – hooks and run-operations
  • Documentation
  • Summary
  • Chapter 13: Moving Beyond the Basics
  • Technical requirements
  • Building for modularity
  • Managing identity
  • Master Data management
  • Saving history at scale
  • Summary
  • Chapter 14: Enhancing Software Quality
  • Technical requirements
  • Refactoring and evolving models
  • Implementing real-world code and business rules
  • Publishing dependable datasets
  • Summary
  • Further reading
  • Chapter 15: Patterns for Frequent Use Cases
  • Technical requirements
  • Ingestion patterns
  • History patterns
  • Summary
  • Further reading
  • Index
  • Other Books You May Enjoy