Fivetran vient d’annoncer leur nouvelle intégration avec dbt Cloud ce qui permet de synchroniser l’exécution des jobs dbt Cloud avec l’exécution des connecteurs Fivetran directement dans Fivetran.
Dans cet article, je vous explique en quoi ça consiste réellement et comment mettre en place cette synchronisation dans votre projet.
Une première synchronisation existait déjà
À vrai dire, comme je le mentionnais dans un précédent article, Fivetran offrait déjà la possibilité de synchroniser l’exécution des transformations dbt avec l’exécution des extractions de données. Mais cela n’existait que pour dbt Core : on spécifiait le repository Git dans lequel se situait le projet dbt, on le synchronisait avec les connecteurs et ensuite, les transformations étaient directement exécutées sur les serveurs de Fivetran.
Cette intégration était déjà une très bonne première version que j’ai beaucoup utilisée. Ça permettait d’exécuter des modèles qu’on avait déjà développés et de tout orchestrer dans Fivetran. Ca avait l’énorme avantage de pouvoir synchroniser l’exécution des modèles DBT avec l’exécution des connecteurs Fivetran : dès que le connecteur Google Analytics a terminé de récupérer les données relatives à l’audience du site web, on peut lancer les transformations qui permettront d’obtenir les données visibles dans les dashboards finaux.
Cela permettait également de se passer d’un outil dédié à ce type d’orchestration comme Airflow, Dagster ou encore Prefect.
L’autre avantage de cette synchronisation qui existait déjà entre Fivetran et DBT est que ça nous permettait de nous passer d’un abonnement à dbt Cloud car tout pouvait directement être géré dans Fivetran.
Sauf que DBT Cloud offre de plus en plus de fonctionnalités dont il est difficile de se passer (APIs, Sécurité, CI/CD, IDE, etc. on y reviendra dans un prochain article). Et cette nouvelle intégration entre Fivetran et dbt Cloud nous permet maintenant de synchroniser l’exécution des connecteurs Fivetran avec des jobs configurés dans dbt Cloud et ce très simplement. Je vous explique les différentes étapes à réaliser.
Étape 1 : Générer le Service Token dans dbt
La première chose à faire est de générer un Service Token
dans DBT afin d’authentifier les appels à l’API dbt que Fivetran va réaliser. Pour cela, c’est très simple, il faut se rendre dans Account Settings > API Tokens > Service Tokens
. Attention, il faut au moins avoir le plan Team de dbt. Il n’est donc pas possible de mettre en place cette intégration avec la version gratuite de dbt.
Il faut ensuite copier le token qui a été généré. Attention, c’est le seul moment où on peut le visualiser, mettez-le bien de côté à ce moment.
Étape 2 : Créer la synchronisation dans Fivetran
Dans Fivetran, il faut se rendre dans l’onglet Transformations à gauche et cliquer sur Add Transformation
(ou Getting Started
si vous n’avez pas encore créé de transformations dans votre projet). Et ensuite, sélectionnez dbt Cloud Integration (dbt Core Integration est l’intégration dont je vous parlais dans la partie précédente).
Le Service Token précédemment généré est ensuite demandé ainsi que la région de votre projet dbt (US si votre url dbt est https://cloud.getdbt.com
et EU si c’est https://emea.dbt.com
).
Une fois authentifié, Fivetran vous proposera de sélectionner le nom du compte et le projet à synchroniser.
Étape 3 : Configurer l’orchestration
L’étape suivante est de synchroniser les jobs dbt avec les connecteurs Fivetran. Pour cela, c’est très simple, il suffit de sélectionner le job dans la liste que Fivetran propose. Et ensuite, en sélectionnant Integrated
, de sélectionner les connecteurs qui déclencheront l’exécution du job lorsque leurs exécutions se seront terminées.
Vous pourrez ensuite voir que lorsque les connecteurs que vous avez sélectionnés seront terminés, Fivetran lancera l’exécution du job dbt. Vous pourrez également consulter les logs directement dans Fivetran.
J’espère qu’avec cet article, vous voyez maintenant l’utilité de cette nouvelle intégration et si elle répond à l’une de vos problématiques.
Si vous continuez de vous poser des questions sur la bonne utilisation de Fivetran et dbt dans votre organisation, n’hésitez pas à prendre contact avec moi afin que nous puissions échanger plus en détail sur votre projet.