Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

scheming : Ajout de "Mon Récap" #335

Merged
merged 3 commits into from
Sep 23, 2024
Merged

scheming : Ajout de "Mon Récap" #335

merged 3 commits into from
Sep 23, 2024

Conversation

rsebille
Copy link
Contributor

@rsebille rsebille commented Jul 17, 2024

Carte Notion : https://www.notion.so/gip-inclusion/dbt-ajouter-une-nouvelle-bdd-e77757275abc4b9b924ea759b04df453?pvs=4

J'ai tester le seed et un modèle tout bête et ça semble faire ce qu'on souhaite mais hésite à jouer avec la PR en poussant un peu le truc si tu as des cas d'utilisation concret, qu'on se lance pas dans un truc si en fait c'est pas bon à la fin :D.

Pourquoi ?

dbt sais gérer plusieurs base de donnée (avec les profils) mais elles doivent être présentes sur le même serveur (host, user, password, etc), les add-on DB de Clever font grosso modo 1 DB = 1 add-on/serveur donc impossible d'utiliser les profils.

Une piste alternative était d'utiliser un namespace mais cela complexifierais la gestion des droits au niveau de Metabase car il faudrait les donner pour chaque table une à une, ce qui va devenir très vite casse-pied et donc ne pas être fait.

L'utilisation des schema répond a priori à toute nos contraintes :

  • Ils sont par DB, nous pouvons donc en créer autant que nous souhaitons dans les add-on Clever.
  • Metabase permet de filtrer par schema lors de l'ajout d'une "Databases", ce qui nous permet ensuite de juste donner le droit sur cette "Database" à l'équipe qui va bien.
  • Permet aussi de pouvoir faire des croisements de donnée entre ces silos logique pour les data.

Checks

  • J'ai lancé le modèle ou seed sur un dump local (si pertinent)
  • J'ai documenté ce modèle voire certains de ses champs (usage métier, tableau de bord, etc)

@rsebille rsebille requested a review from YannickPassa July 17, 2024 14:28
@rsebille rsebille self-assigned this Jul 17, 2024
@rsebille rsebille force-pushed the rsebille/scheming branch from 04e724b to 064585d Compare July 22, 2024 10:43
@rsebille
Copy link
Contributor Author

rsebille commented Aug 5, 2024

@YannickPassa Aucune urgence mais petit ping si jamais c'est passé aux oubliettes ;)

Copy link
Contributor

@YannickPassa YannickPassa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Trop bien ! Donc on est d'accord que ça va tout me pousser dans un schéma mon recap sur la bdd du c2 c ça ?
Et est ce que tu peux me laisser merge le tout ? Je vais devoir refaire le TB monrecap donc j'aimerais pousser ça quand j'ai le temps d'y faire :)

@rsebille
Copy link
Contributor Author

Trop bien ! Donc on est d'accord que ça va tout me pousser dans un schéma mon recap sur la bdd du c2 c ça ?

Oui, c'est ce que fera le DAG dorénavant.
Et coté DBT, c'est le +schema dans la conf qui permet d'aller lire dans celui-ci plutôt que public en fonction du dossier, information à garder en tête pour les prochains ajout ;).

Et est ce que tu peux me laisser merge le tout ? Je vais devoir refaire le TB monrecap donc j'aimerais pousser ça quand j'ai le temps d'y faire :)

Yep, hésites pas à tester un modèle en local avant car j'ai fait que du synthétique donc ça se trouve ça passe pas l'épreuve du feu ;).

@rsebille rsebille assigned YannickPassa and unassigned rsebille Sep 10, 2024
More informations here : https://docs.getdbt.com/docs/build/custom-schemas#changing-the-way-dbt-generates-a-schema-name

And yes, I am doing *exactly* what they are telling we shouldn't do.
This warning is mainly directed to people who share environments (ie. dbt
Cloud), because we don't have any kind of shared environment we can use a
cleaner and shorter name for our schema instead of `public_$schema`.
The empty `settings` seed is here so dbt create the schema for us, this
feels a little hacky but also cleaner to centralize everything here
instead of having a little bit of configuration in our DAGs.
@YannickPassa YannickPassa added this pull request to the merge queue Sep 23, 2024
Merged via the queue into main with commit cb943c6 Sep 23, 2024
5 checks passed
@YannickPassa YannickPassa deleted the rsebille/scheming branch September 23, 2024 16:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants