Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
La traçabilité des données montre d’où proviennent les données dans Azure Databricks et où elles vont : quelles requêtes et quels fichiers alimentent une table, quels jobs et notebooks la transforment, et quels tableaux de bord consomment les résultats.
Unity Catalog capture automatiquement la traçabilité pour les requêtes exécutées sur Azure Databricks, jusqu’au niveau des colonnes, et les agrège dans tous les espaces de travail rattachés au metastore. La traçabilité dans Unity Catalog vous permet de :
- Effectuer une analyse d’impact : avant de modifier ou de supprimer une table ou une colonne, identifiez les tables, travaux et tableaux de bord en aval qui en dépendent.
- Examiner les causes racines : lorsqu’un rapport en aval affiche des résultats inattendus, tracez les sources en amont pour trouver où les données sont divergentes.
- Suivre le flux de données sensibles : pour les audits de conformité, consultez l’origine des données réglementées, la façon dont elles sont transformées et les ressources en aval qui les consomment.
- Comprendre les dépendances inter-équipes : découvrez quelles équipes sont responsables des sources en amont dont vous dépendez, ou quelles équipes consomment vos tables.
La traçabilité externe étend le graphe de traçabilité au-delà d’Azure Databricks. Inscrivez des sources en amont telles que Salesforce ou MySQL et des outils en aval tels que Tableau ou Power BI en tant que ressources externes dans le catalogue Unity, et elles apparaissent en même temps que vos tables de catalogue Unity dans un seul graphique. Voir traçabilité externe.
L’image suivante est un exemple de graphique de traçabilité. Les nœuds peuvent représenter des tables et des vues, des versions de modèle ML, des ressources externes et des chemins d’accès aux fichiers.
Spécifications
Pour capturer la traçabilité des données à l’aide du catalogue Unity :
- Les tables doivent être enregistrées dans un metastore Unity Catalog.
- Les ressources externes (celles qui ne sont pas inscrites dans le metastore du catalogue Unity) doivent être ajoutées en tant qu’objets de métadonnées externes dans Unity Catalog, configurées pour avoir des relations avec d’autres objets sécurisables inscrits dans votre metastore Unity Catalog. Voir traçabilité externe.
- Les requêtes doivent utiliser le DataFrame Spark (par exemple, les fonctions Spark SQL qui retournent un DataFrame) ou des interfaces DATAbricks SQL telles que les notebooks ou l’éditeur de requête SQL.
Pour afficher la lignée des données :
- Vous devez disposer au moins du privilège
BROWSEsur le catalogue parent de la table ou de la vue. Le catalogue parent doit également être accessible à partir de l’espace de travail. Consultez la liaison catalogue-espace de travail. - Pour les blocs-notes, les travaux ou les tableaux de bord, vous devez disposer d’autorisations sur ces objets, comme défini par les paramètres de contrôle d’accès dans l’espace de travail. Pour plus d’informations, consultez Autorisations.
- Pour un pipeline avec Unity Catalog, vous devez disposer des autorisations CAN VIEW sur le pipeline.
Voici les exigences de calcul à respecter :
- Le suivi de la traçabilité de la diffusion en continu entre des tables Delta nécessite Databricks Runtime 11.3 LTS ou version ultérieure.
- Le suivi du lignage des colonnes pour les workloads de pipelines Lakeflow nécessite Databricks Runtime 13.3 LTS ou une version ultérieure.
Configuration réseau requise :
- Vous devrez peut-être mettre à jour vos règles de pare-feu sortantes pour permettre la connectivité au point de terminaison Event Hubs dans le plan de contrôle Azure Databricks. Cela s’applique généralement si votre espace de travail Azure Databricks est déployé dans votre propre réseau virtuel (également appelé injection de réseau virtuel). Pour obtenir le point de terminaison Event Hubs de la région de votre espace de travail, consultez Metastore, stockage Blob des artefacts, stockage des tables système, stockage Blob des journaux et adresses IP du point de terminaison Event Hubs. Pour plus d’informations sur la configuration des itinéraires définis par l’utilisateur pour Azure Databricks, consultez Paramètres d’itinéraire définis par l’utilisateur pour Azure Databricks.
Voir le lignage dans Catalog Explorer
Pour utiliser l’Explorateur de catalogues et voir le lignage des tables :
Dans votre espace de travail Azure Databricks, cliquez sur
Catalog.
Recherchez votre table ou parcourez-la.
Sélectionnez l’onglet Traçabilité . Le panneau de traçabilité s’affiche et affiche les tables associées.
Pour afficher un graphique interactif de la traçabilité des données, cliquez sur Afficher le graphique de traçabilité.
Par défaut, un niveau est affiché dans le graphique. Cliquez sur l’icône
d’un nœud pour afficher davantage de connexions si elles sont disponibles.Cliquez sur l’icône d’une arête de connexion dans le graphe de traçabilité pour ouvrir le panneau Détails de traçabilité.
Le panneau Détails de lignage affiche des détails sur la connexion, notamment les tables source et cible.
Pour afficher une ressource associée à une table, sélectionnez la ressource dans le panneau Détails de lignage. Vous pouvez filtrer par carnets, tâches, pipelines et requêtes.
Pour afficher la traçabilité au niveau des colonnes, cliquez sur une colonne dans le graphique pour afficher des liens vers des colonnes associées. Par exemple, le fait de cliquer sur la
revenuecolonne de cet exemple de graphique montre les colonnes en amont à partir de lesquelles la colonne a été dérivée :
Afficher la traçabilité du travail
Pour afficher la traçabilité des travaux, accédez à l’onglet Traçabilité d’une table, sélectionnez Travaux, puis sélectionnez En aval. Le nom du travail apparaît sous Nom du travail comme consommateur de la table.
Afficher la traçabilité du tableau de bord
Pour afficher la traçabilité du tableau de bord, accédez à l’onglet Traçabilité d’un tableau, puis cliquez sur Tableaux de bord. Le tableau de bord apparaît sous Nom du tableau de bord comme consommateur de la table.
Obtenez la traçabilité à l’aide de code Genie
Genie Code peut répondre aux questions de traçabilité en langage naturel.
Pour obtenir des informations de traçabilité à l’aide de Genie Code :
- Dans la barre latérale de l’espace de travail, cliquez sur
Catalogue.
- Parcourez ou recherchez le catalogue, cliquez sur le nom du catalogue, puis cliquez sur
Icône Génie Code dans le coin supérieur droit.
- À l’invite de commande de Genie Code, tapez :
-
/getTableLineagespour afficher les dépendances en amont et en aval. -
/getTableInsightspour accéder aux insights pilotés par les métadonnées, tels que l’activité utilisateur et les modèles de requête.
-
Ces requêtes permettent à Genie Code de répondre à des questions telles que « montre-moi les lignées en aval » ou « qui interroge le plus souvent cette table ».
Traçabilité des requêtes avec les tables système
Vous pouvez utiliser les tables système de traçabilité pour interroger les données de traçabilité de manière programmatique. Pour obtenir des instructions détaillées, consultez les Références sur les tables système et les Références de tables système de traçabilité.
Permissions
Les graphiques de traçabilité partagent le même modèle d’autorisation que Unity Catalog. Les tables et autres objets de données inscrits dans le metastore Du catalogue Unity sont visibles uniquement par les utilisateurs disposant d’au moins BROWSE des autorisations sur ces objets. Si un utilisateur n’a pas le privilège BROWSE ou SELECT sur une table, il ne peut pas explorer sa traçabilité.
La traçabilité est agrégée sur tous les espaces de travail attachés au metastore Unity Catalog. Par conséquent, la traçabilité capturée dans un espace de travail est visible dans tout autre espace de travail qui partage ce metastore, tant que l’utilisateur dispose d’autorisations d’objet adéquates. Des informations détaillées sur les objets au niveau de l’espace de travail, tels que les blocs-notes et les tableaux de bord d’autres espaces de travail, sont masqués. Consultez Limitations.
Par exemple, exécutez les commandes suivantes pour userA:
GRANT USE SCHEMA on lineage_data.lineagedemo to `userA@company.com`;
GRANT SELECT on lineage_data.lineagedemo.menu to `userA@company.com`;
Lorsque userA affichent le graphique de traçabilité de la table lineage_data.lineagedemo.menu, ils voient la table menu. Ils ne peuvent pas voir d’informations sur les tables associées, telles que la table en aval lineage_data.lineagedemo.dinner . La dinner table apparaît comme un nœud masked pour userA, et userA ne peut pas étendre le graphe pour révéler les tables en aval à partir de tables auxquelles ils n’ont pas l’autorisation d’accéder.
Si vous exécutez la commande suivante pour accorder l’autorisation BROWSE à userB, cet utilisateur peut afficher le graphique de traçabilité pour n’importe quelle table du lineage_data schéma :
GRANT BROWSE on lineage_data to `userB@company.com`;
Les utilisateurs de Lineage doivent également disposer d’autorisations spécifiques pour afficher des objets de l’espace de travail tels que des notebooks, des tâches et des tableaux de bord. Les informations détaillées sur ces objets sont visibles uniquement dans l’espace de travail où ils ont été créés.
Pour plus d’informations sur la gestion de l’accès aux objets sécurisables dans Unity Catalog, consultez Gérer les privilèges dans Unity Catalog. Pour plus d’informations sur la gestion de l’accès aux objets de l’espace de travail comme les notebooks, les travaux et les tableaux de bord, consultez Listes de contrôle d’accès.
Retention
Les données de lignage affichées dans l’Explorateur de catalogue sont conservées indéfiniment. Toutes les données de traçabilité capturées après le 1er septembre 2024 sont disponibles. Pour les metastores créés après cette date, Catalog Explorer inclut une option Toutes les périodes dans la liste déroulante d'intervalle de temps de la traçabilité. Pour les metastores plus anciens, la liste déroulante inclut une option Toutes les options disponibles qui commencent à partir du 1er septembre 2024. La sélection par défaut est de 1 an.
Les tables système de traçabilité (system.access.table_lineage et system.access.column_lineage) conservent une fenêtre de données dynamique d'une durée de un an. Consultez Références de tables système de traçabilité.
Limitations
La traçabilité des données présente les limitations suivantes. Ces limitations s’appliquent également aux tables de système de lignage :
- Les données de traçabilité capturées avant le 1er septembre 2024 ne sont pas disponibles.
- Les travaux qui utilisent la demande de l'API
runs submitJobs ou le type de tâchespark submitne sont pas disponibles dans les vues de lignage. La traçabilité au niveau des tables et des colonnes est toujours capturée pour ces workflows, mais le lien vers l’exécution du travail n’est pas capturé. - La traçabilité n’est pas conservée pour les catalogues renommés, les schémas, les tables, les vues ou les colonnes.
- Si vous utilisez des points de contrôle de jeu de données Spark SQL, la traçabilité n’est pas capturée.
- Unity Catalog capture les informations de traçabilité des pipelines Lakeflow dans la plupart des cas, mais la couverture est incomplète pour les pipelines qui utilisent des PRIVATE tables.
- Les jeux de données distribués résilients (RDD) ne sont pas capturés dans la traçabilité.
- Les vues temporaires globales ne sont pas capturées dans la traçabilité.
- Les transactions émettent la traçabilité lorsque chaque lecture et écriture ont lieu. Les événements de lignée persistent même si la transaction est annulée.
- Les tables sous
system.information_schemane sont pas capturées dans la traçabilité. - Unity Catalog capture autant que possible la traçabilité au niveau des colonnes. Cependant, dans certains cas, la traçabilité au niveau des colonnes ne peut pas être capturée. Voici quelques-uns des éléments suivants :
La traçabilité des colonnes ne peut pas être capturée si la source ou la cible est référencée comme un chemin d’accès (par exemple :
select * from delta."s3://<bucket>/<path>"). La traçabilité des colonnes est uniquement prise en charge lorsque la source et la cible sont référencées par le nom de la table (exemple :select * from <catalog>.<schema>.<table>).Utilisation de fonctions définies par l’utilisateur (UDF), qui peuvent masquer le mappage entre les colonnes source et cible.
Ressources additionnelles
- Démonstration : Catalogue Unity - Traçabilité des données
- Traçabilité du modèle ML : pour suivre la traçabilité d’un modèle Machine Learning, consultez Suivre la traçabilité des données d’un modèle dans le catalogue Unity.
- Informations sur la table : l’onglet Informations dans Catalog Explorer affiche les tendances d’utilisation d’une table : modèles de requêtes, principaux utilisateurs et tableaux de bord qui utilisent cette table. Consultez Voir les analyses et la popularité du tableau.