Le data lineage permet de savoir d où vient une donnée et où elle va. En 2025, c est un sujet Senior qui différencie les profils avec une vraie culture de gouvernance.
Dans quels cas concrets le data lineage vous a-t-il été utile ?
Qu est-ce qu OpenLineage ? Pourquoi est-ce un standard important ?
# Exemple d événement OpenLineage émis par Airflow
{
'eventType': 'COMPLETE',
'eventTime': '2025-01-15T08:30:00Z',
'job': {
'namespace': 'airflow',
'name': 'pipeline_ventes.transform_orders'
},
'inputs': [{
'namespace': 'snowflake',
'name': 'RAW_DB.FIVETRAN.ORDERS',
'facets': {
'schema': {
'fields': [{'name': 'order_id', 'type': 'VARCHAR'}]
}
}
}],
'outputs': [{
'namespace': 'snowflake',
'name': 'PROD_DB.STAGING.STG_ORDERS'
}]
}Comment DataHub agrège-t-il le lineage de plusieurs outils différents ?
# Lancer DataHub localement
pip install acryl-datahub
datahub docker quickstart
# Ingestor dbt
datahub ingest -c dbt_ingest.yaml
# dbt_ingest.yaml
source:
type: dbt
config:
manifest_path: ./target/manifest.json
catalog_path: ./target/catalog.json
sources_path: ./target/sources.jsonComment dbt génère-t-il le lineage automatiquement ?
Qu est-ce que le column-level lineage ? Pourquoi est-il plus puissant que le table-level lineage ?
Montrez comment vous utilisez le lineage pour évaluer l impact d un changement.
# dbt : identifier les modèles impactés par un changement
# Si je modifie stg_orders.sql, quels modèles sont affectés ?
dbt ls --select stg_orders+ # stg_orders et tous ses descendants
# Exclure les modèles en dehors du périmètre
dbt build --select stg_orders+ # rebuilder la chaîne complète
# DataHub API : impact analysis programmatique
from datahub.ingestion.api.common import PipelineContext
# Requêter les downstream datasets d une colonne
client.get_downstream_lineage(
dataset='urn:li:dataset:(urn:li:dataPlatform:snowflake,PROD_DB.STAGING.STG_ORDERS,PROD)'
)| Niveau | Maitrise | Signal GO | NO-GO |
|---|---|---|---|
| Confirmé | Lineage dbt, dbt docs, comprend le concept | Utilise ref() systématiquement, sait générer dbt docs avec le lineage | Ne sait pas ce qu est le data lineage |
| Senior | OpenLineage, DataHub, column-level lineage, impact analysis | A déployé DataHub, utilise l impact analysis avant chaque changement critique | N a jamais entendu parler d OpenLineage |
Premier entretien gratuit. Rapport GO/NO-GO sous 48h.