Gérer les ressources à l'aide de Data Catalog

Cette page explique comment rechercher et gérer vos ressources Spanner à l'aide de Data Catalog.

Data Catalog est un service de gestion des métadonnées entièrement géré et évolutif au sein de Dataplex Universal Catalog. Il catalogue automatiquement les métadonnées suivantes sur les instances, bases de données, tables, colonnes et vues Spanner :

  • Nom et nom complet
  • Emplacement (région)
  • Dates de création et de dernière modification
  • Schéma (pour les tables et les vues)
  • Description

Les métadonnées Spanner sont automatiquement synchronisées avec Data Catalog à intervalles réguliers, généralement toutes les quelques heures. Vous pouvez utiliser Data Catalog pour découvrir et comprendre vos métadonnées Spanner. Utilisez Data Catalog pour faciliter les activités suivantes :

  • Analyse, y compris les dépendances et l'adéquation à un cas d'utilisation
  • Gestion du changement
  • Transfert de données (pipelines)
  • Évolution du schéma

Avec Data Catalog, vous pouvez organiser les métadonnées en associant des tags aux entrées de métadonnées Spanner. Chaque balise peut avoir plusieurs champs de métadonnées et être basée sur un modèle de balise prédéfini ou personnalisé.

Par exemple, vous pouvez associer le tag suivant à une colonne contenant un numéro de sécurité sociale, qui est une information permettant d'identifier personnellement l'utilisateur :

pii:true
pii_type:SSN

Lorsque vous déplacez une instance qui utilise des tags, ceux-ci ne sont pas automatiquement déplacés vers l'instance de destination. En revanche, vous devez exporter les tags de l'instance source avant de la déplacer, puis les importer dans l'instance de destination. Pour en savoir plus, consultez Exporter et importer des tags.

Pour en savoir plus sur Data Catalog, consultez Qu'est-ce que Data Catalog ?.

Avant de commencer

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Activez l'API Data Catalog pour le projet.

    Activer l'API Data Catalog

  7. Vérifiez les autorisations.

    Vous devez disposer de certains rôles et autorisations IAM (Identity and Access Management) pour rechercher et associer des tags aux éléments Spanner. Pour plus d'informations, consultez la section Rôles et autorisations IAM requis pour Data Catalog.

  8. Créer des modèles de tag

    Les modèles de tag sont des structures réutilisables qui vous permettent de créer rapidement des tags. Les modèles vous aident à éviter la duplication de tâches et de tags incomplets. Créez autant de modèles de tags que nécessaire.

    Pour en savoir plus, consultez Tags et modèles de tags.

    Associer des tags à des éléments Spanner

    Associer des tags à des éléments Spanner vous permet d'effectuer les opérations suivantes :

    • Ajouter des métadonnées métier aux éléments.
    • Rechercher des éléments par métadonnées métier et autres métadonnées personnalisées.

    Pour en savoir plus, consultez Tags et modèles de tags.

    Rechercher des composants Spanner

    Utilisez la page de recherche Dataplex Universal Catalog dans la console Google Cloud pour rechercher des éléments Spanner.

    1. Accédez à la page de recherche de Dataplex Universal Catalog.

      Accéder à la recherche

    2. Dans le panneau Filtres, sous Systèmes, sélectionnez Spanner.

      Dataplex Universal Catalog affiche tous les éléments Spanner connus.

    3. Facultatif : effectuez l'une des opérations suivantes pour affiner la recherche :

      • Utilisez la recherche par attribut sur la page Recherche. Cochez les cases sous Types de données, Projets et Tags.

      • Dans le champ de recherche, ajoutez un paramètre de recherche après system=cloud_spanner. Séparez les paramètres par des espaces.

      Par exemple, pour n'afficher que les bases de données, saisissez le texte suivant dans le champ de recherche, puis appuyez sur Enter.

       system=cloud_spanner type=database
      

      Vous pouvez également utiliser des parenthèses et les opérateurs logiques and et or pour les expressions complexes. Pour en savoir plus sur les expressions que vous pouvez utiliser dans le champ de recherche, consultez la section Syntaxe de recherche dans Data Catalog.

    4. Dans la table des résultats, cliquez sur le nom d'un élément pour en afficher les métadonnées.

    5. Facultatif : effectuez l'une des opérations suivantes :

      • Cliquez sur AJOUTER UNE PRÉSENTATION pour ajouter une description en texte enrichi de l'élément.
      • Cliquez sur ASSOCIER DES TAGS pour ajouter un tag à l'élément.
      • Pour une table, cliquez sur l'onglet SCHEMA pour afficher les colonnes de la table.
      • Pour une instance (SERVICE), pour afficher les bases de données des membres, cliquez sur l'onglet LISTE D'ENTRÉES, puis sur AFFICHER LES ENTRÉES ENFANTS DANS LA RECHERCHE. (Si l'onglet LISTE DES ENTRÉES n'apparaît pas, cela signifie que l'instance ne comporte aucune base de données.)

    Exemple de workflow : afficher le détail d'une instance aux colonnes

    Dans cet exemple de workflow, vous commencez par rechercher une instance Spanner, puis vous affichez une base de données membre, puis une table de cette base de données, et enfin les colonnes de la table.

    1. Accédez à la page de recherche de Dataplex Universal Catalog.

      Accéder à la recherche

    2. Dans le panneau Filtres, sous Systèmes, sélectionnez Spanner.

    3. Pour afficher toutes les instances Spanner dans Data Catalog, cochez la case Service sous Types de données ou saisissez le texte suivant dans le champ de recherche, puis appuyez sur Enter.

      system=cloud_spanner type=service
      
    4. Sélectionnez le nom d'une instance.

    5. Sur la page Informations sur le service Spanner, cliquez sur l'onglet LISTE D'ENTRÉES, puis sur AFFICHER LES ENTRÉES ENFANTS DANS LA RECHERCHE.

      Dataplex Universal Catalog affiche les bases de données de l'instance.

    6. Sur la page Détails de la base de données Spanner, cliquez sur l'onglet LISTE D'ENTRÉES, puis sur AFFICHER LES ENTRÉES ENFANTS DANS LA RECHERCHE.

      Dataplex Universal Catalog affiche les tables de la base de données.

    7. Sélectionnez un nom de table, puis cliquez sur SCHÉMA sur la page Informations sur la table Spanner pour afficher les colonnes de la table.

    8. Facultatif : Pour ajouter un tag à une colonne, cliquez sur le signe plus sous Tags de colonne.

    Exporter et importer des tags

    Lorsque vous déplacez une instance Spanner, le processus de déplacement supprime les tags d'instance que vous avez créés dans Data Catalog. Pour conserver vos tags, vous devez procéder comme suit :

    • Interrogez les tags associés à l'instance.
    • Copiez les détails des tags.
    • Créez les tags sur l'instance déplacée.

    Spanner synchronise les données toutes les six heures. Les modifications apportées aux métadonnées des ressources Spanner (instances, bases de données, tables, vues ou colonnes, par exemple) peuvent prendre environ six heures pour être propagées à Data Catalog.

    Exporter des tags à partir de la configuration de l'instance source

    Pour lister les tags d'une instance (entrée ou groupe d'entrées), utilisez la commande Google Cloud CLI gcloud data-catalog tags list comme suit :

    curl \
    'https://datacatalog.googleapis.com/v1/projects/PROJECT/locations/LOCATION/entryGroups/ENTRY_GROUP/tags?key=API_KEY' \
      --header 'Authorization: Bearer ACCESS_TOKEN' \
      --header 'Accept: application/json' \
      --compressed
    

    Remplacez les éléments suivants :

    • PROJECT : projet contenant les tags.
    • LOCATION : emplacement des tags.
    • API_KEY : chaîne unique qui vous permet d'accéder à une API.
    • ACCESS_TOKEN : jeton d'accès utilisé par votre application pour s'authentifier auprès du service.

    Importer des balises dans la configuration de destination

    Avant de suivre cette procédure, procédez comme suit :

    Pour copier un tag, créez-le sur l'instance déplacée à l'aide de la commande gcloud data-catalog tags create comme suit :

    curl --request POST \
    'https://datacatalog.googleapis.com/v1/entries:lookup?fullyQualifiedName=FQN&location=LOCATION&project=PROJECT&key=API_KEY' \
      --header 'Authorization: Bearer ACCESS_TOKEN' \
      --header 'Accept: application/json' \
      --header 'Content-Type: application/json' \
      --data '{"column":"myColumnName","name":"myTagName","template":"myTemplateName","fields":{"myDoubleField":{"doubleValue":0}}}' \
      --compressed
    

    Remplacez les éléments suivants :

    • FQN : nom complet de la ressource. Les FQN se présentent sous deux formes :

      Pour les ressources non régionalisées : {SYSTEM}:{PROJECT}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}

      Pour les ressources régionalisées : {SYSTEM}:{PROJECT}.{LOCATION_ID}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}

      Exemple de tableau DPMS :

      dataproc_metastore:{PROJECT_ID}.{LOCATION_ID}.{INSTANCE_ID}.{DATABASE_ID}.{TABLE_ID}

    • LOCATION : emplacement où la recherche est effectuée.

    • PROJECT : projet dans lequel la recherche est effectuée.

    • API_KEY : chaîne unique qui vous permet d'accéder à une API.

    • ACCESS_TOKEN : jeton d'accès utilisé par votre application pour s'authentifier auprès du service.

    Rôles et autorisations IAM requis pour Data Catalog

    Le tableau suivant indique les rôles et autorisations IAM requis pour les différentes opérations Data Catalog.

    Opération Data Catalog Ressource Spanner Rôles ou autorisations requis
    Créer un modèle de tag ND roles/datacatalog.tagTemplateCreator
    Rechercher des ressources Spanner Instance spanner.instances.get
    Base de données spanner.databases.get
    Table spanner.databases.get
    Vues spanner.databases.get
    Afficher les tags publics Instance spanner.instances.get
    Base de données spanner.databases.get
    Table spanner.databases.get
    Vues spanner.databases.get
    Afficher les tags privés Instances datacatalog.tagTemplates.getTag + spanner.instances.get
    Bases de données datacatalog.tagTemplates.getTag + spanner.databases.get
    Tables datacatalog.tagTemplates.getTag + spanner.databases.get
    Vues datacatalog.tagTemplates.getTag + spanner.databases.get
    Associer un tag à une ressource Spanner à l'aide d'un modèle de tag Instances datacatalog.tagTemplates.use + spanner.instances.updateTag
    Bases de données datacatalog.tagTemplates.use + spanner.databases.updateTag
    Tables datacatalog.tagTemplates.use + spanner.databases.updateTag
    Vues datacatalog.tagTemplates.use + spanner.databases.updateTag

    L'autorisation spanner.instances.UpdateTag est incluse dans le rôle suivant :

    • roles/spanner.admin

    L'autorisation spanner.databases.UpdateTag est incluse dans les rôles suivants :

    • roles/spanner.admin
    • roles/spanner.databaseAdmin
    • roles/spanner.databaseUser

    Pour en savoir plus, consultez la section Rôles prédéfinis.

    Étapes suivantes