Configuration

Lier les bases de données

Les bases de données accédées par le Store / l'ETL devraient être pseudo-anonymisées. Ce n'est pas obligatoire, mais c'est fortement recommandé, car les traitements analytiques n'ont généralement pas besoin d'utiliser des renseignements personnels ;)

Comment lier les bases de données?

Le fichier cssXX.dashboards_store/dbt_project.yml expose une section databases dans laquelle vous renseignerez les noms des bases de données à lier au Store.

Le processus d'ajout d'une base de données est le suivant:

  1. Ouvrez le fichier cssXX.dashboards_store/dbt_project.yml.
  2. Remplacez le placeholder par le nom entièrement qualifié de la base de données, ou FQN.
# cssXX.dashboards_store/dbt_project.yml
vars:
    database_bi: Bi distribution's FQN 
    database_paie: GHRPAIE's FQN
    database_gpi: GPI's FQN 
    database_jade: JADE's FQN

Quel est le FQN de ma base de données?

Le FQN est sensible à la casse

Le FQN d'une base de données est la chaîne utilisée pour référencer cette base dans une requête SQL.

SELECT * 
FROM server.database.schema.table

Ici, server.database est le FQN de la base de données.

Lorsque la base de données est colocalisée sur le même serveur que celui où s'exécute la requête, le server peut être omis. Le FQN de la base est alors simplement database.

Donc, si la base de données à ajouter est colocalisée sur le même serveur que store et store_dev, utilisez le nom de la base. Si la base à lier se trouve sur un serveur lié très, très lointain, le FQN est la concaténation du nom du serveur lié, du point (.) et du nom de la base de données.

Le nom de la base sera interpolé à l'exécution dans les fichiers SQL des interfaces qui récupèrent l'information depuis cette base.

Le bloc suivant montre une configuration de cssXX.dashboards_store/dbt_project.yml avec une base GRHPAIE colocalisée et une base GPI accédée via un serveur lié.

vars:
    # Base source depuis laquelle extraire les donnees pour un CSS.
    database_paie: "paie" # La BD est colocalisee, une reference directe suffit
    database_gpi: "[dataserver/IA].[gpi]" # La base GPI est sur le serveur lie "dataserver/IA"

La section "ma maman dit que je suis spécial": j'utilise Azure SQL Server

Azure SQL Server ne supporte pas les serveurs liés. Pire encore, Azure SQL Database gère mal les communications entre bases de données. Dans ce cas, les données doivent être extraites de la base source vers la base du Store dans un schéma dédié. Vous pouvez utiliser un outil comme Airbyte ou Fivetran pour déplacer les données, ou faire de l'overriding sur les modèles cssXX.dashboards_store/models/interfaces afin d'ajouter un appel à la macro stage_external. La macro stage_external repose sur la création d'une table EXTERNAL dans la base du Store. C'est essentiellement l'enfant indigne d'un serveur lié et d'une vue.

À compléter.

Copyright © 2026