Importer des métadonnées depuis MySQL

Knowledge Catalog (anciennement Dataplex Universal Catalog) vous permet d'extraire et d'importer des métadonnées de bases de données MySQL dans un groupe d'entrées à l'aide d'un connecteur géré. Vous pouvez ensuite rechercher, afficher et gérer vos éléments MySQL avec vos autres données cataloguées, ou récupérer le contexte pour les grands modèles de langage (LLM). Ce connecteur est compatible avec les instances MySQL hébergées sur site, dans Cloud SQL ou dans d'autres environnements cloud. Pour en savoir plus sur le fonctionnement des connecteurs, consultez À propos des connecteurs de métadonnées.

Avant de commencer

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. Respectez les conditions préalables de MySQL.
  4. Respectez les conditions préalables de mise en réseau.

Rôles et autorisations IAM

Pour créer et gérer un job de connecteur Knowledge Catalog, vous avez besoin de rôles Identity and Access Management (IAM) qui accordent des autorisations pour Knowledge Catalog et 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 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 groupe d'entrées Dataplex (roles/dataplex.entryGroupImporter). Vous pouvez accorder 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

Conditions préalables de MySQL

Assurez-vous de respecter les conditions préalables pour les transferts MySQL. Pour en savoir plus, consultez les conditions préalables de 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 version 8.0 ou ultérieure.
  • Autorisations minimales requises : l'outil d'extraction nécessite des autorisations spécifiques pour interroger correctement 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 : nom d'hôte, port, version et configurations de 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 de tables virtuelles.
  • Routines : procédures stockées, fonctions et leurs paramètres.
  • Contraintes : contraintes détaillées de clé primaire, de clé étrangère, uniques et de vérification.
  • Déclencheurs : définitions de 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. Accordez 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 à répertorier 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 la 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, aucun rattachement de réseau n'est requis.

Configurer un connecteur MySQL

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

Console

  1. Dans la Google Cloud console, 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 détails de connexion de 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 le nom d'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 Objets de métadonnées MySQL à importer, cliquez sur Parcourir pour sélectionner 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.
    • Choisissez si vous souhaitez définir les autorisations sur le groupe d'entrées maintenant ou plus tard. Définissez les autorisations pour que les utilisateurs puissent afficher les métadonnées importées. Si vous n'avez pas accordé le rôle Importateur de groupe d'entrées Dataplex (roles/dataplex.entryGroupImporter) ou l'autorisation dataplex.entryGroups.import à l'agent de service Service de transfert de données BigQuery (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) au niveau du projet, vous devez l'accorder au niveau du groupe d'entrées.
  7. Dans la section Nom de la configuration du connecteur, sous Nom à afficher, saisissez un nom pour le 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 du job.

  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 temporaires mises en scène avant de démarrer les jobs d'importation de métadonnées Knowledge Catalog. Elle n'est pas utilisée pour chiffrer les métadonnées dans le groupe d'entrées Knowledge Catalog de destination.

  11. Cliquez sur Enregistrer.

REST

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

  • Définissez le champ dataSourceId sur "mysql".
  • Dans le champ metadataDestination, remplissez l'dataplexConfiguration objet 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, ou vous pouvez le démarrer manuellement.

Rechercher et afficher des métadonnées MySQL

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

    Accéder à la recherche

  2. Dans le panneau Filtres , vous pouvez filtrer les éléments MySQL à l’aide des sections Projet, Système et Alias de type. Dans la section Système, sélectionnez Contexte importé. La sélection de ce filtre ouvre une sous-section Connecteurs gérés. 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 mots clés ou en langage naturel. Par exemple, pour afficher toutes les tables MySQL à l'aide de la recherche par mots clés, 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' LookupContext pour récupérer le contexte LLM pour des ressources MySQL spécifiques.

Étape suivante