Aller au contenu principal

Traçabilité externe

Unity Catalog capture automatiquement data lineage d'exécution sur l'ensemble des requêtes exécutées sur Databricks. Cependant, vous pourriez avoir des charges de travail qui s'exécutent en dehors de Databricks (par exemple, les ETL du premier kilomètre ou les BI du dernier kilomètre). Unity Catalog vous permet d'ajouter des métadonnées de traçabilité externes pour enrichir la data lineage Databricks qu'il capture automatiquement, vous offrant une vue de bout en bout de la traçabilité dans Unity Catalog. Ceci est utile lorsque vous souhaitez capturer d'où provenaient les données (par exemple, Salesforce ou MySQL) avant qu'elles ne soient ingérées dans Unity Catalog ou où les données sont consommées en dehors d'Unity Catalog (par exemple, Tableau ou Power BI).

Vous pouvez ajouter une traçabilité externe de deux façons :

Le graphe de lignage suivant montre deux tables externes dans MySQL et PostgreSQL qui ont été ingérées dans Databricks en tant que table gérée par Unity Catalog, avec des colonnes transformées en une colonne release_date, puis consommées par un rapport externe.

Un graphe de lignée montrant les tables externes en amont et un rapport en aval connecté à une table Unity Catalog, avec le bouton Créer une lignée externe dans le coin supérieur droit.

Pour des informations générales sur le data lineage dans Databricks, consultez Lineage dans Unity Catalog.

Exigences

Pour ajouter des métadonnées de traçabilité externe dans Unity Catalog, vous devez disposer des privilèges suivants, en fonction de la tâche spécifique :

  • Pour créer un objet sécurisable de métadonnées externes dans Unity Catalog, vous devez disposer du privilège CREATE EXTERNAL METADATA sur le métastore.
  • Pour spécifier des relations de lignage entre un objet de métadonnées externe et tout autre objet Unity Catalog, vous devez disposer du privilège MODIFY sur l'objet de métadonnées externe.
  • Pour spécifier une relation de lignage en aval à un objet Unity Catalog, vous devez avoir des privilèges de lecture sur l'objet (par exemple, SELECT sur une table).
  • Pour spécifier une relation de lignée en amont avec un objet Unity Catalog, vous devez disposer des privilèges d'écriture sur l'objet (par exemple, MODIFY sur une table).

Ajouter des métadonnées de traçabilité externe

Pour ajouter des métadonnées de traçabilité externe :

  1. Créez un objet sécurisable de métadonnées externe dans Unity Catalog.

    Cet objet représente une entité dans un système externe, tel qu'un tableau de bord dans Tableau.

  2. Configurez une relation de lignage entre l'objet de métadonnées externe et un autre objet Unity Catalog, tel qu'une table, un modèle, un chemin d'accès ou un autre objet de métadonnées externe.

    Lorsque vous avez créé des relations de lignage, l'objet de métadonnées externes apparaît dans la vue du graphe de lignage.

Vous pouvez créer des objets de métadonnées externes et configurer des relations de lignée à l'aide de l'interface utilisateur de Catalog Explorer. Pour start à partir d'un graphe de traçabilité existant, cliquez sur Créer une traçabilité externe dans le coin supérieur droit du graphe. Vous pouvez également commencer par la section **Données externes** dans Catalog Explorer, comme décrit dans les sections suivantes.

Créer un objet de métadonnées externes

Vous pouvez créer un objet de métadonnées externes à l'aide de Catalog Explorer ou de l'API de métadonnées externes.

Pour utiliser Catalog Explorer afin de créer un objet de métadonnées externes :

  1. Dans votre workspace Databricks, cliquez sur Icône de données. Catalogue .

  2. Cliquez sur le bouton External data > , accédez à l'onglet External Metadata , et cliquez sur Create external metadata .

  3. Spécifiez les détails des métadonnées.

    Obligatoire :

    • Nom : saisissez un nom lisible par un humain qui aide les utilisateurs de Databricks à comprendre ce qu'ils voient dans la lignée. Les objets de métadonnées externes sont des objets sécurisables Unity Catalog, donc le nom doit respecter les règles de dénomination des objets Unity Catalog. Voir les exigences de dénomination des objets sécurisables.
    • Type de système : sélectionnez dans la liste des systèmes externes de données et de BI courants. Si vous ne trouvez pas le vôtre, sélectionnez Personnalisé .
    • Type d'entité : Saisissez le type d'objet, tel que « table » ou « tableau de bord ».

    Facultatif :

    • URL : Saisissez l'URL de l'objet si vous souhaitez que les visualisateurs du graphe de lignée puissent cliquer pour accéder à l'asset externe (tel qu'un tableau de bord Tableau, par exemple).
    • Description

    Avancé :

    • Colonnes : si vous souhaitez effectuer un mappage au niveau des colonnes de cet objet externe vers un autre objet Unity Catalog, saisissez les noms des colonnes. Sélectionnez UI pour les saisir un par un ou Text Input pour saisir une liste délimitée par des virgules dans une seule zone de texte.
    • **Propriétés** : si vous souhaitez suivre d'autres propriétés dans le lignage, saisissez-les sous forme de paires clé-valeur JSON. Vous pouvez utiliser l'**interface utilisateur** pour saisir chaque paire clé-valeur, ou saisir un objet **JSON** complet.
  4. Cliquez sur Créer .

    Une boîte de dialogue vous donne la possibilité de visualiser l'objet de métadonnées externe ou de créer des relations de lignage pour l'objet.

Créer des relations de traçabilité

Vous pouvez créer des relations de traçabilité à l'aide de Catalog Explorer, de l'API de traçabilité externe ou du SDK Databricks pour Python.

Pour ajouter des relations entre un objet de métadonnées externe et d'autres objets Unity Catalog :

  1. Suivez l'invite mentionnée ci-dessus ou trouvez l'objet de métadonnées externe existant dans l'Explorateur de catalogues :

    1. Cliquez sur Icône de données. Catalogue
    2. Cliquez sur le bouton **Données externes >**
    3. Accédez à la **tab** Métadonnées externes et sélectionnez l'objet de métadonnées externes.
  2. Cliquez sur Créer une relation de traçabilité .

  3. Sélectionnez si vous souhaitez créer une relation amont ou aval.

  4. Saisissez le Type d'objet pour lequel vous souhaitez créer la relation :

    • Table : Sélectionnez la table à l'aide de la boîte de dialogue de recherche.
    • Modèle : Sélectionnez le modèle à l'aide de la boîte de dialogue de recherche, puis sélectionnez la version du modèle.
    • **Chemin** : Pour les volumes ou les emplacements externes, saisissez le chemin.
    • **Métadonnées externes** : sélectionnez l'objet de métadonnées externes dans le menu déroulant.
  5. (Facultatif) Cliquez sur Avancées pour ajouter :

    • Mappages de colonnes entre l'objet de métadonnées externe et l'objet source ou cible.
    • Autres métadonnées sous forme de paires clé-valeur JSON. Par exemple, vous pouvez les utiliser pour saisir le texte de la query qui a créé une table à partir de l'objet de métadonnées externes ou des annotations qui expliquent le flux de travail externe ayant généré la relation.
  6. Cliquez sur Créer .

Vous pouvez maintenant voir la relation de traçabilité externe dans la tab Traçabilité des objets liés.

Modéliser les relations de traçabilité externe

Lorsque vous ajoutez un lignage externe manuellement, utilisez les modèles suivants pour modéliser des relations plus complexes :

  • Connecter deux tables Unity Catalog : Pour spécifier une relation de lignage entre deux tables toutes deux enregistrées dans Unity Catalog, créez un objet de métadonnées externe qui se situe entre elles. Spécifiez une table comme en amont de l'objet de métadonnées externe et l'autre comme en aval afin qu'elles apparaissent connectées dans le graphe de lignage.
  • Ajouter plusieurs niveaux de traçabilité : Pour annoter les données qui passent par plusieurs systèmes avant d'entrer dans Databricks, créez plusieurs objets de métadonnées externes et configurez des relations de traçabilité externe entre chacun d'eux.
  • Ajouter un lignage au niveau des colonnes : spécifiez les noms des colonnes lorsque vous créez l’objet de métadonnées externes, puis mappez les colonnes source et cible lorsque vous configurez la relation de lignage.

Limitations

  • La traçabilité externe n'est pas enregistrée dans les tables système de traçabilité (system.access.table_lineage et system.access.column_lineage).
  • Vous pouvez créer jusqu'à 10 000 objets de métadonnées externes et 100 000 relations de lignage externes par metastore. Voir les limites des Ressources.

Ressources supplémentaires