Importer des métadonnées depuis MySQL

Ce document explique comment importer des métadonnées depuis MySQL dans Knowledge Catalog (anciennement Dataplex Universal Catalog) à l'aide d'un connecteur Knowledge Catalog.

Ce connecteur est compatible avec les instances MySQL hébergées sur site, dans Cloud SQL ou dans d'autres environnements cloud.

Avant d'importer des métadonnées depuis MySQL, effectuez les tâches suivantes :

  1. Attribuez les rôles et autorisations requis.
  2. Activez les API Knowledge Catalog et Service de transfert de données BigQuery.
  3. Remplissez les conditions préalables de MySQL.
  4. Remplissez les conditions préalables concernant le réseau.

Rôles et autorisations IAM

Pour créer et gérer un job de connecteur Knowledge Catalog, vous devez disposer de rôles IAM (Identity and Access Management) qui accordent des autorisations pour Knowledge Catalog et le service de transfert de données BigQuery.

Pour obtenir les autorisations nécessaires pour configurer un connecteur MySQL, demandez à votre administrateur de vous accorder les rôles IAM suivants :

De plus, vous devez accorder à l'agent de service de transfert de données BigQuery (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) l'autorisation dataplex.entryGroups.import ou le rôle Importateur de groupes d'entrées Dataplex (roles/dataplex.entryGroupImporter). Vous pouvez attribuer ce rôle au niveau du projet ou du groupe d'entrées.

Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

Activer les API

Activez les API Knowledge Catalog et Service de transfert de données BigQuery.

Activer les API

Prérequis MySQL

Assurez-vous de remplir les conditions préalables pour les transferts MySQL. Pour en savoir plus, consultez la section Conditions requises pour MySQL dans la documentation du service de transfert de données BigQuery.

En plus des conditions préalables du service de transfert de données BigQuery, votre base de données MySQL doit répondre aux exigences suivantes pour l'extraction des métadonnées :

  • Version minimale : MySQL 8.0 ou version ultérieure.
  • Autorisations minimales requises : l'outil d'extraction nécessite des autorisations spécifiques pour pouvoir interroger INFORMATION_SCHEMA et collecter des métadonnées.

Ces autorisations garantissent la couverture des métadonnées suivantes :

  • Informations sur l'instance et la base de données : configurations du nom d'hôte, du port, de la version et du schéma.
  • Tables et colonnes : structure de base, types de données et métadonnées opérationnelles, telles que les tailles et le nombre de lignes.
  • Index et partitions : index secondaires, méthodes de partitionnement et expressions.
  • Vues : structures et définitions des tables virtuelles.
  • Routines : procédures stockées, fonctions et leurs paramètres.
  • Contraintes : contraintes détaillées de clé primaire, de clé étrangère, d'unicité et de vérification.
  • Déclencheurs : définitions des déclencheurs et timing des événements.

Pour accorder ces autorisations, exécutez les scripts SQL suivants.

  1. Créez l'utilisateur :

    CREATE USER 'USERNAME'@'%'
    IDENTIFIED BY 'PASSWORD';
    
  2. Accorder l'accès aux métadonnées. Vous pouvez accorder l'accès à une seule base de données cible ou à toutes les bases de données de l'instance.

    Pour accorder l'accès à une seule base de données ou à un seul schéma cible :

    GRANT SELECT, SHOW VIEW, REFERENCES, EXECUTE, TRIGGER
    ON DATABASE_NAME.*
    TO 'USERNAME'@'%';
    

    Vous pouvez également accorder l'accès à toutes les bases de données de l'instance :

    GRANT SELECT, SHOW VIEW, REFERENCES, EXECUTE, TRIGGER
    ON *.*
    TO 'USERNAME'@'%';
    
  3. Autorisez l'outil d'extraction à lister toutes les bases de données disponibles sur l'instance :

    GRANT SHOW DATABASES ON *.* TO 'USERNAME'@'%';
    
  4. Appliquez les modifications :

    FLUSH PRIVILEGES;
    

Remplacez les éléments suivants :

  • USERNAME : utilisateur de base de données que vous souhaitez configurer.
  • PASSWORD : mot de passe de l'utilisateur de la base de données.
  • DATABASE_NAME : nom de la base de données MySQL à laquelle vous souhaitez accéder.

Conditions préalables de mise en réseau

Un rattachement de réseau pour la connexion via Private Service Connect est requis lorsque vous vous connectez de manière sécurisée à des bases de données externes ou à des sources de données cloud tierces avec une adresse IP privée dans un réseau privé, afin de permettre au service de transfert de données BigQuery d'accéder à votre base de données.

Si vous vous connectez à un environnement sur site ou à une instance hébergée dans le cloud à l'aide d'une adresse IP publique, un rattachement de réseau n'est pas nécessaire.

Configurer un connecteur MySQL

Configurez un connecteur MySQL à l'aide de la console Google Cloud ou de l'API.

Console

  1. Dans la console Google Cloud , accédez à la page Knowledge Catalog.

    Accéder à Knowledge Catalog

  2. Dans le menu de navigation, dans la section Gérer, cliquez sur Connecteurs.

  3. Cliquez sur Ajouter une connexion.

  4. Dans la liste Connecteurs, sélectionnez la fiche MySQL.

  5. Dans la section Détails de la source de données, fournissez les informations de connexion pour votre instance MySQL :

    • Sous Rattachement de réseau, sélectionnez un rattachement de réseau existant si nécessaire ou créez-en un.
    • Saisissez l'hôte, le port, le nom de la base de données, le nom d'utilisateur et le mot de passe.
    • Si vous utilisez TLS, sélectionnez un mode TLS et fournissez un certificat PEM approuvé.
    • Dans le champ Objets de métadonnées MySQL à importer, cliquez sur Parcourir pour sélectionner les objets.
  6. Dans la section Paramètres de destination :

    • Cliquez sur Parcourir et sélectionnez un groupe d'entrées Knowledge Catalog existant pour stocker les métadonnées importées, ou cliquez sur Créer un groupe d'entrées.
    • Indiquez si vous souhaitez définir les autorisations du groupe d'entrées maintenant ou plus tard. Définissez des autorisations pour que les utilisateurs puissent afficher les métadonnées importées. Si vous n'avez pas attribué le rôle Importateur de groupes d'entrées Dataplex (roles/dataplex.entryGroupImporter) ni l'autorisation dataplex.entryGroups.import à l'agent de service de transfert de données BigQuery (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) au niveau du projet, vous devez le faire au niveau du groupe d'entrées.
  7. Dans la section Nom de la configuration du connecteur, sous Nom à afficher, saisissez le nom du job d'importation de métadonnées.

  8. Dans la section Options de programmation, configurez la fréquence du job d'importation de métadonnées. Si vous sélectionnez À la demande, le job ne s'exécute que lorsque vous le déclenchez manuellement.

  9. Facultatif : Dans la section Options de notification, configurez les notifications par e-mail ou Pub/Sub en cas d'échec des jobs.

  10. Facultatif : Dans la section Options avancées, configurez les paramètres de chiffrement. Si vous sélectionnez une clé de chiffrement gérée par le client (CMEK), notez que la clé est utilisée pour chiffrer toutes les données transitoires préparées avant le début des jobs d'importation des métadonnées du Knowledge Catalog. Il n'est pas utilisé pour chiffrer les métadonnées dans le groupe d'entrées Knowledge Catalog de destination.

  11. Cliquez sur Enregistrer.

REST

Utilisez la méthode projects.locations.transferConfigs.create. Dans la ressource TransferConfig, configurez les champs suivants :

  • Définissez le champ dataSourceId sur "mysql".
  • Dans le champ metadataDestination, renseignez l'objet dataplexConfiguration avec le chemin d'accès à la ressource du groupe d'entrées Knowledge Catalog cible : projects/<var>PROJECT_ID</var>/locations/<var>LOCATION</var>/entryGroups/<var>ENTRY_GROUP_ID</var>

Une fois le job créé, Knowledge Catalog planifie la première exécution en fonction de votre configuration. Vous pouvez également le démarrer manuellement.

Rechercher et afficher les métadonnées MySQL

  1. Dans la console Google Cloud , accédez à la page Rechercher de Knowledge Catalog.

    Accéder à la recherche

  2. Dans le panneau Filtres, vous pouvez filtrer les composants MySQL à l'aide des sections Projet, Système et Alias de type. Dans la section Système, sélectionnez Contexte importé. Si vous sélectionnez ce filtre, une sous-section Connecteurs gérés s'ouvre. Sélectionnez MySQL pour filtrer toutes les métadonnées MySQL.

  3. Vous pouvez utiliser le champ de recherche pour effectuer des requêtes de recherche. Vous pouvez effectuer une recherche par mot clé ou en langage naturel. Par exemple, pour afficher toutes les tables MySQL à l'aide de la recherche par mot clé, saisissez system=MYSQL AND type=TABLE.

    Pour en savoir plus sur la recherche de ressources, consultez Rechercher des ressources dans Knowledge Catalog. Pour en savoir plus sur les expressions que vous pouvez utiliser dans le champ de recherche, consultez la section Syntaxe de recherche pour Knowledge Catalog.

  4. Vous pouvez également utiliser l'API LookupContext pour récupérer le contexte LLM de ressources MySQL spécifiques.

Étapes suivantes