DBT
dbt
Create effective data management workflows with dbt
✓ Official training SFEIR InstituteLevel Fundamentals⏱️ 2 days (14h)
What you will learn
- Understand the key concepts, advantages, and architecture of dbt as a data transformation and modeling tool.
- Create structured data models with dbt, and perform transformations to process and prepare data for analysis.
- Master advanced features such as macros, Jinja models, variables, and flow control.
- Use dbt snapshots to track changes over time and manage historical data, facilitating the analysis of historical trends and slowly changing dimensions.
- Implement tests to ensure data quality and integrity, allowing for the validation of transformation results and detection of anomalies.
Prerequisites
- Practical SQL knowledge equivalent to the SQL fundamentals course
Target audience
- Data Analysts, Data Engineers, Anyone interested in data transformation
Training Program
13 modules to master the fundamentals
Topics covered
- →Evolution of the data stack
- →Understanding the differences between Extract-Transform-Load (ETL) and Extract-Load-Transform (ELT) data integration approaches
- →Introduction to the modern data stack
Topics covered
- →Overview of dbt
- →Installing dbt and configuring the development environment
- →Creating a dbt project
- →Connecting to data sources
Activities
Setting up a dbt project
Topics covered
- →Understanding dbt models
- →How do dbt models work?
- →Materialization options
- →Configuring materialization
- →Introduction to the tagging feature for metadata organization
Activities
Creating data models with dbt
Topics covered
- →Introduction to dbt sources
- →Configuring dbt sources
- →Working with dbt references
Activities
Configuring dbt sources, referencing external data, and managing model dependencies
Topics covered
- →Introduction to dbt seeds
- →Creating and populating seed data
- →Advantages of using seeds for data initialization
- →Integrating seeds into your dbt models
Activities
Creating and integrating seeds into your dbt projects
Topics covered
- →Understanding snapshots in dbt
- →Configuring and defining snapshots
- →Running and managing snapshots
Activities
Implementing a snapshot strategy
Topics covered
- →Understanding macros
- →Jinja, a templating language
- →Using variables to manage data pipeline configuration
Activities
Advanced data transformation and control
Topics covered
- →Introduction to dbt packages
- →Exploring the dbt hub
- →Installing and using a dbt package
Activities
Exploring dbt packages
Topics covered
- →Highlighting potential risks in the code
- →Setting up automated tests
- →Choosing the appropriate test
- →Implementing data tests
Activities
Implementing data tests
Topics covered
- →Documenting data models
- →Using dbt's built-in documentation features to generate and maintain accessible and up-to-date model documentation
- →The importance of lineage
Activities
Documenting DBT models
Topics covered
- →Performing data analysis
- →Running custom code before and after dbt execution
- →Creating shareable and accessible data assets
Activities
Creating an exposure
Topics covered
- →Understanding manifest.json
- →Introduction to run_result.json
Topics covered
- →Resources on dbt best practices
- →About the DBT certification exam
Quality Process
SFEIR Institute's commitment: an excellence approach to ensure the quality and success of all our training programs. Learn more about our quality approach
Teaching Methods Used
- Lectures / Theoretical Slides — Presentation of concepts using visual aids (PowerPoint, PDF).
- Technical Demonstration (Demos) — The instructor performs a task or procedure while students observe.
- Guided Labs — Guided practical exercises on software, hardware, or technical environments.
Evaluation and Monitoring System
The achievement of training objectives is evaluated at multiple levels to ensure quality:
- Continuous Knowledge Assessment : Verification of knowledge throughout the training via participatory methods (quizzes, practical exercises, case studies) under instructor supervision.
- Progress Measurement : Comparative self-assessment system including an initial diagnostic to determine the starting level, followed by a final evaluation to validate skills development.
- Quality Evaluation : End-of-session satisfaction questionnaire to measure the relevance and effectiveness of the training as perceived by participants.
Upcoming sessions
Train multiple employees
- Volume discounts (multiple seats)
- Private or custom session
- On-site or remote