1 of 24

GROUPBEES

2 of 24

Le pattern ELT en action avec DBT et SQLMesh

3 of 24

CDO GroupBees

Mazlum Tosun

​

​

4 of 24

Introduction

  • Dans les projets data, 2 patterns ont émergé en batch
  • ETL : Extract Transform Load
  • ELT : Extract Load Transform
  • Explication et différences entre ces patterns

5 of 24

ETL : Extract Transform Load

6 of 24

ELT : Extract Load Transform

7 of 24

Un peu d’histoire

  • Domination de l’ETL années 1990-2010
  • DWH pas très scalables à l’époque
  • 2011–2014 : Le tournant du Cloud
  • Avec les arrivées de BigQuery, Redshift et Snowflake
  • Moteurs qui peuvent scaler et gérer de très gros volumes

8 of 24

Un peu d’histoire

  • Peu de temps après, émergence de ELT (2015–2020)
  • Arrivée de dbt en 2016
  • La maturité de ELT (2020–aujourd’hui)
  • Modern data stack avec ELT, Airflow, DWH Serverless etc..

9 of 24

ETL VS ELT

  • ETL et ELT continuent de cohabiter
  • ETL lorsqu’on a besoin de transfo plus complexes
  • ELT si on veut bénéficier de la puissance du SQL et des DWH
  • Code testable plus facilement avec ETL
  • SQL généralement plus rapide
  • ETL et ELT peuvent être fusionnés

10 of 24

Démo

11 of 24

12 of 24

Airflow orchestre BigQuery

ELT géré

par Airflow et BQ

Orchestration pipeline

par Airflow

Orchestration SQL par Airflow

13 of 24

Airflow avec Dbt

ELT géré par Dbt

Orchestration pipeline

par Airflow

Orchestration SQL par Dbt

14 of 24

Airflow avec SQLMesh

Orchestration pipeline

par Airflow

Orchestration SQL par SQLMesh

ELT géré par SQLMesh

15 of 24

Quelques mots sur Dbt

  • Sorti en 2016
  • Open source
  • Proposé par Dbt Labs
  • Framework ELT le plus populaire et utilisé sur les projets data
  • Grosse communauté

16 of 24

Quelques mots sur SQLMesh

  • Sorti en 2022
  • Open source
  • Proposé par Tobiko data (racheté par Fivetran)
  • Moins grosse communauté que sur Dbt
  • Proposé par les créateurs de SQLGlot

17 of 24

Virtual & Physical layers SQLMesh

Plus de détails sur le lien

18 of 24

Virtual & Physical layers SQLMesh

19 of 24

Recap Dbt versus SQLMesh

  • Dbt plus simple à prendre en main
  • Approche plus tech et DataOps pour SQLMesh
  • State pour SQLMesh avec layers virtuels et physiques
  • Approche multi envs depuis la prod pour SQLMesh
  • Plus grosse communauté pour dbt
  • dbt plus utilisé chez les clients

20 of 24

Dbt : modèle incremental

21 of 24

SQLMesh : modèle incremental

22 of 24

Conclusion

  • Explication des patterns ETL et ELT avec des cas concrets
  • ELT plus utilisé aujourd’hui
  • Certains frameworks apportent puissance et industrialisation à ELT
  • Illustration avec Airflow & BigQuery
  • Illustration avec Dbt & SQLMesh et comparaison

23 of 24

Repo GitHub

Slides

Feedback

24 of 24

GitHub

Slides

Feedback

Youtube

LinkedIn