Glossaire data engineering
Résumé
Définitions courtes des termes que les notes du vault emploient sans les redéfinir. Chaque entrée renvoie vers la note qui la développe. Pour pointer une définition précise :
[[Glossaire data engineering#scd|SCD]].
Modélisation
Clé primaire
Colonne (ou ensemble de colonnes) qui identifie une ligne de façon unique. Voir Normalisation 2NF et 3NF.
Dépendance fonctionnelle
« A détermine B » : connaître A suffit pour connaître B. Base des formes normales. Voir Normalisation 2NF et 3NF.
3NF
Troisième forme normale : chaque colonne dépend de la clé, de toute la clé, et de rien d’autre que la clé. Voir Normalisation 2NF et 3NF.
Grain
Ce que représente une ligne d’une table de faits (une ligne de commande, un appel). Le premier choix de conception en modélisation dimensionnelle. Voir Schéma en étoile, de bout en bout.
Clé de substitution
Identifiant technique créé par l’entrepôt, indépendant des clés des systèmes sources. Voir Schéma en étoile, de bout en bout.
Dimension conforme
Dimension partagée à l’identique par plusieurs marts, ce qui rend leurs chiffres comparables. Voir Inmon, Kimball et Data Vault.
SCD
Slowly Changing Dimension : technique pour gérer les attributs d’une dimension qui changent. Type 0 : on conserve la valeur d’origine. Type 1 : on écrase. Type 2 : on ajoute une ligne datée. Type 3 : on garde l’ancienne valeur dans une colonne. Voir Slowly Changing Dimensions, types 0 à 3.
ODS
Operational Data Store : vue intégrée et courante des sources pour le reporting opérationnel. Le sens varie selon les auteurs. Voir Staging, ODS, DWH et architecture médaillon.
Append-only
Une table où l’on n’ajoute que de nouvelles lignes, sans modifier les anciennes. Ne s’applique pas à une dimension en SCD de type 1. Voir Staging, ODS, DWH et architecture médaillon.
Traitement des données
Staging
Zone d’atterrissage des données brutes avant intégration. Le mot a trois sens dans le vault : zone ETL transitoire, couche bronze du médaillon, modèles stg_ de dbt. Voir Staging, ODS, DWH et architecture médaillon.
Médaillon
Organisation de la donnée en trois niveaux de raffinement : bronze (copie conservée), silver (nettoyée et intégrée), gold (prête à la consommation). Voir Staging, ODS, DWH et architecture médaillon.
ACID
Garanties d’une transaction : atomicité, cohérence, isolation, durabilité. Voir ACID vs BASE.
Schema-on-write et schema-on-read
Imposer la structure avant le chargement, ou l’interpréter à la lecture. Voir Schema-on-Write vs Schema-on-Read.
Tombstone
Marqueur qui enregistre qu’une ligne a été supprimée, pour qu’un événement plus ancien ne la recrée pas. Voir Change Data Capture (CDC).
Transaction
Groupe d’opérations traité comme un tout : tout réussit ou rien. Voir ACID vs BASE.
Table externe
Table dont les données restent dans des fichiers hors du moteur, lus au moment de la requête. Voir Schema-on-Write vs Schema-on-Read.
Crypto-shredding
Effacer des données chiffrées en détruisant la clé. Voir Inmon, Kimball et Data Vault.
Upsert
Insérer une ligne si sa clé n’existe pas, la mettre à jour sinon. En SQL, c’est le rôle de MERGE. Voir Idempotence et backfill.
Orchestrateur
Outil qui planifie des traitements, gère leurs dépendances et les relance en cas d’échec (par exemple Airflow). Voir Idempotence et backfill.
ETL et ELT
ETL : transformer avant de charger. ELT : charger d’abord, transformer ensuite dans l’entrepôt. dbt relève de l’ELT. Voir dbt — Fondamentaux.
DAG
Graphe orienté sans cycle : l’ordre de dépendance entre tâches ou modèles. dbt le construit avec ref(), un orchestrateur le déclare tâche par tâche. Voir dbt — Fondamentaux.
Jinja
Langage de gabarit utilisé par dbt pour générer du SQL ({{ ref('…') }}, macros). Voir dbt — Fondamentaux.
Data downtime
Temps pendant lequel une donnée est fausse, absente, imprécise ou inaccessible. Voir Observabilité des données.
CDC
Change Data Capture : capter les changements d’une source (insertions, mises à jour, suppressions) plutôt que de la recopier en entier. Voir Change Data Capture (CDC).
Idempotence
Rejouer une opération ne change pas le résultat. Indispensable pour qu’un retry après échec ne crée pas de doublons. Voir Idempotence et backfill.
Moteur colonnaire
Moteur qui stocke et lit les données colonne par colonne : une requête ne lit que les colonnes demandées. C’est le cas de BigQuery, et du format Parquet qui range les données par colonne. Voir OLTP vs OLAP et stockage en colonnes et Union all vs unpivot.
OLTP et OLAP
OLTP : beaucoup de petites transactions sur quelques lignes (application). OLAP : peu de requêtes qui agrègent beaucoup de lignes (analyse). Voir OLTP vs OLAP et stockage en colonnes.
Backfill
Rejouer un traitement sur une période passée. Exige un traitement idempotent. Voir Idempotence et backfill.
Row group
Découpage d’un fichier Parquet en blocs de lignes, chacun avec un bloc par colonne et des statistiques. Voir Parquet, le format de fichier colonnaire.
Partition et partition pruning
Découpage d’une table ou de fichiers par valeur (souvent la date). Le partition pruning ne lit que les partitions utiles. Voir Schema-on-Write vs Schema-on-Read.
Cohérence
CAP et PACELC
CAP : en cas de partition réseau, choisir entre cohérence et disponibilité. PACELC : sans panne, arbitrer entre latence et cohérence. Voir ACID vs BASE.
CRDT
Structure de données répliquée conçue pour que les copies convergent sans coordination ; la fusion des états y est commutative, associative et idempotente (variante par états). Voir ACID vs BASE.
Entrepôt et lakehouse
Data warehouse, data lake, lakehouse, data mart
Warehouse : base analytique à schéma imposé. Lake : fichiers bruts sur object storage. Lakehouse : un lac avec une couche de table transactionnelle. Data mart : sous-ensemble de l’entrepôt orienté vers un besoin métier. Voir Data lake vs lakehouse et Inmon, Kimball et Data Vault.
Table de faits et dimension
Dans un modèle dimensionnel, la table de faits enregistre des mesures (un montant) et les dimensions décrivent leur contexte (client, produit, date). Voir Inmon, Kimball et Data Vault.
Hub, Link, Satellite
Les trois objets du Data Vault : identifiants métier, relations entre eux, attributs historisés. Voir Inmon, Kimball et Data Vault.
Matérialisation
Forme physique d’un modèle dbt : vue, table, incrémental, éphémère. Voir dbt — Fondamentaux.
MERGE
Instruction SQL qui insère, met à jour ou supprime selon qu’une ligne source correspond ou non à une ligne cible. Voir Idempotence et backfill.
WAL et LSN
Journal de transactions d’une base (WAL dans PostgreSQL) et position d’un changement dans ce journal (LSN). Voir Change Data Capture (CDC).
Manifest
Fichier de métadonnées d’un format de table qui liste les fichiers de données et leurs statistiques. Voir Data lake vs lakehouse.
Lookback (fenêtre)
Période de données relue à chaque exécution d’un traitement incrémental pour rattraper les retards. Voir dbt Incremental Models vs Snowflake Dynamic Tables.
Lineage
Chemin de la donnée de sa source à sa consommation. Voir Observabilité des données.
Formats de table et lakehouse
Format de table
Couche de métadonnées sur des fichiers (Iceberg, Delta, Hudi, Paimon) qui apporte transactions, schéma et historique. Voir Écosystème lakehouse, formats, catalogues et moteurs.
Catalogue
Service qui sait où se trouve la version courante de chaque table, et qui rend le commit atomique. Voir Data lake vs lakehouse et Écosystème lakehouse, formats, catalogues et moteurs.
Snapshot
État d’une table à un instant, défini par une liste de fichiers. À ne pas confondre avec un snapshot dbt, qui historise les lignes d’une table à chaque exécution de dbt snapshot. Voir dbt et le lakehouse.
Compaction
Regrouper de nombreux petits fichiers en peu de gros fichiers. Voir Maintenance d’un lakehouse.
Time travel
Relire une table telle qu’elle était à un snapshot passé. Limité par la rétention. Voir Data lake vs lakehouse.
Copy-on-write et merge-on-read
Deux façons de modifier des fichiers immuables : réécrire les fichiers touchés, ou écrire un petit delete file combiné à la lecture. Voir Data lake vs lakehouse.
Gouvernance
Domaine
Unité d’organisation métier (ventes, logistique, finance) qui, dans un data mesh, possède et publie ses données analytiques. Voir Data mesh.
Data product
Jeu de données publié comme un service : propriétaire, interface stable, engagements mesurables, cycle de vie. Voir Data product et Data product, définitions et points de vue.
Data contract
Accord écrit entre producteur et consommateurs sur le schéma, la qualité et le niveau de service d’un jeu de données. Voir Data contract et ODCS.
Data quantum
Plus petite unité d’architecture déployable de façon indépendante ; dans un data mesh, c’est le produit de données. Voir Data product.
SLI, SLO et SLA
SLI : une mesure (délai depuis le dernier chargement). SLO : une valeur cible pour cette mesure (moins de 4 h). SLA : un contrat avec conséquences en cas de non-respect. Voir Observabilité des données et Data contract et ODCS.
ODCS et ODPS
Open Data Contract Standard : format YAML d’un contrat de données. Open Data Product Standard : format YAML d’un produit de données. Voir Data contract et ODCS et Data product.