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. Il catalogue automatiquement les métadonnées suivantes concernant 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 deux ou trois heures. Data Catalog vous permet de découvrir et de comprendre vos métadonnées Spanner. Utilisez Data Catalog pour réaliser 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 tag peut comporter plusieurs champs de métadonnées et être basé sur un modèle de tag prédéfini ou personnalisé.

Par exemple, vous pouvez associer la balise suivante à 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. À la place, vous devez exporter les tags depuis l'instance source avant de déplacer l'instance, puis les importer dans l'instance de destination. Pour en savoir plus, consultez la page Exporter et importer des tags.

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

Avant de commencer

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Vérifiez que la facturation est activée pour votre projet Google Cloud.

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

    Go to project selector

  5. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  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.

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 balises que nécessaire.

Pour en savoir plus, consultez Balises et modèles de tag.

Associer des tags aux éléments Spanner

Associer des tags aux é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 Balises et modèles de tag.

Rechercher des éléments Spanner

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

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

    Accéder à Dataplex

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

    Dataplex 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 page Syntaxe de recherche de 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 afficher les colonnes d'une table, cliquez sur l'onglet SCHEMA.
    • Pour afficher les bases de données des membres d'une instance (SERVICE), cliquez sur l'onglet LISTE D'ENTRÉE, puis sur AFFICHER LES ENTREPRISES ENFANTS DANS LA RECHERCHE. (Si l'onglet ENTRY LIST n'apparaît pas, cela signifie que l'instance ne possède 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, vous affichez ses colonnes.

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

    Accéder à Dataplex

  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 un nom d'instance.

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

    Dataplex 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ÉE, puis sur AFFICHER LES ENTREPRISES ENFANTS DANS LA RECHERCHE.

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

  7. Sélectionnez un nom de table, puis sur la page Détails de la table Spanner, cliquez sur SCHEMA pour afficher les colonnes de la table.

  8. Facultatif: Pour ajouter un tag à une colonne, cliquez sur le signe plus sous Balises 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 balises, procédez 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. Il peut s'écouler environ six heures avant que les modifications de métadonnées apportées à des éléments Spanner tels que des instances, des bases de données, des tables, des vues ou des colonnes soient répercutées dans Data Catalog.

Exporter les tags depuis la configuration de l'instance source

Pour répertorier les tags d'une instance (entrée ou groupe d'entrées), exécutez la commande gcloud data-catalog tags list de la Google Cloud CLI 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 tags dans la configuration de destination

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

Pour copier un tag, créez les tags 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 prennent 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 pour une table 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 présente 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 Non disponible 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