tadata
Retour à l'accueil

Conception Moderne d'Entrepôt de Données : Couches, SCDs et Modèles Incrémentaux

#data-warehouse#data-modeling#analytics#data-engineering

Un entrepôt de données bien conçu est le fondement d'une analytics fiable. Malgré l'engouement pour les paradigmes plus récents, les principes fondamentaux de modélisation dimensionnelle, d'architecture en couches et de suivi des changements restent essentiels. Cet article couvre l'approche moderne de la conception d'entrepôt.

Architecture en Couches : Du Staging au Mart

┌─────────────────────────────────────────────────────────────────┐
│                      CONSOMMATEURS                              │
│   Dashboards    SQL Ad-hoc    Features ML    Reverse ETL        │
└────────────────────────┬────────────────────────────────────────┘
                         │
┌────────────────────────▼────────────────────────────────────────┐
│  COUCHE MART (Gold)                                             │
│  Tables prêtes pour le business, documentées, gouvernées        │
│  Préfixes: fct_, dim_, rpt_, agg_                               │
└────────────────────────┬────────────────────────────────────────┘
                         │
┌────────────────────────▼────────────────────────────────────────┐
│  COUCHE INTERMÉDIAIRE (Silver)                                  │
│  Nettoyées, typées, dédupliquées, logique métier appliquée      │
│  Préfixe: int_                                                  │
└────────────────────────┬────────────────────────────────────────┘
                         │
┌────────────────────────▼────────────────────────────────────────┐
│  COUCHE STAGING (Bronze)                                        │
│  Miroir 1:1 de la source, transformation minimale, append-only  │
│  Préfixe: stg_                                                  │
└─────────────────────────────────────────────────────────────────┘

Principes de Conception par Couche

CoucheObjectifMatérialisationFraîcheurAccès
Staging (Bronze)Miroir source brutIncremental append / vueTemps réel à horaireData engineers
Intermédiaire (Silver)Nettoyer, dédupliquer, typerIncremental ou tableHoraire à quotidienEngineers + analystes
Mart (Gold)Entités prêtes pour le businessTable (matérialisée)Planifié (SLO)Tous consommateurs

Comparaison des Types de Dimensions à Évolution Lente (SCD)

Type SCDDescriptionCas d'UsageComplexitéImpact StockageHistorique
Type 0Aucun changement suiviDonnées de référence statiquesAucuneMinimalAucun
Type 1Écraser l'ancienne valeurCorrections, attributs non historiquesFaibleMinimalPerdu
Type 2Ajouter ligne avec dates de validitéHistorique complet requisMoyenneÉlevéComplet
Type 3Ajouter colonne pour valeur précédenteSeulement actuel + précédentFaibleModéréLimité
Type 6Hybride (1 + 2 + 3)Besoin flag actuel + historique + précédentÉlevéeÉlevéComplet

Matrice de Stratégie de Matérialisation

StratégieQuand UtiliserAvantagesInconvénientsConfig dbt
ViewStaging, transformations légèresPas de coût stockage, toujours fraisRequêtes lentesmaterialized='view'
TableMarts, agrégations lourdesRequêtes rapides, prévisibleRebuild completmaterialized='table'
IncrementalGrandes tables de faitsBuilds rapides, coût faibleLogique complexematerialized='incremental'
EphemeralCTEs, logique réutilisablePas d'objet crééDebugging plus difficilematerialized='ephemeral'
SnapshotSuivi SCD Type 2Historique automatiqueRequiert clé unique + timestampdbt snapshot

Cadre de Convention de Nommage

Type d'ObjetPatternExempleNotes
Modèle stagingstg_{source}_{entite}stg_stripe_paymentsUn par table source
Modèle intermédiaireint_{entite}_{verbe}int_orders_enrichedVerbe décrit la transformation
Table de faitsfct_{événement}fct_ordersGrain = un événement
Table de dimensiondim_{entité}dim_customersGrain = une entité
Rapport/agrégatrpt_{sujet} ou agg_{sujet}rpt_monthly_revenuePré-calculé pour BI
Clé de substitutionsk_{entité}_idsk_customer_idAuto-générée
Clé naturellenk_{entité}_idnk_customer_idDu système source
Timestamps{événement}_atcreated_atToujours UTC
Booléensis_{condition} ou has_{chose}is_activeIntention claire

Ressources

Nous utilisons des cookies analytiques pour améliorer votre expérience. Aucune donnée personnelle n'est collectée.