Ce document explique comment importer des métadonnées de 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 de pouvoir importer des métadonnées depuis MySQL, effectuez les tâches suivantes :
- Attribuez les rôles et autorisations requis.
- Activez les API Knowledge Catalog et Service de transfert de données BigQuery.
- Respectez les conditions préalables de MySQL.
- Respectez les conditions préalables de mise en réseau.
Rôles et autorisations IAM
Pour créer et gérer une tâche 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 :
- Pour créer et gérer des groupes d'entrées : administrateur de catalogue Dataplex
(
roles/dataplex.catalogAdmin), éditeur de catalogue Dataplex (roles/dataplex.catalogEditor) ou propriétaire du groupe d'entrées Dataplex (roles/dataplex.entryGroupOwner) sur le projet. - Pour créer et gérer des tâches de transfert Service de transfert de données BigQuery : administrateur BigQuery
(
roles/bigquery.admin) sur le projet. - Pour afficher les journaux dans Cloud Logging : lecteur de journaux
(
roles/logging.viewer) sur le projet.
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.
Conditions préalables de MySQL
Assurez-vous de respecter les conditions préalables pour les transferts MySQL. Pour en savoir plus, consultez la section 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_SCHEMAet 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.
Créez l'utilisateur :
CREATE USER 'USERNAME'@'%' IDENTIFIED BY 'PASSWORD';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'@'%';Sinon, pour accorder l'accès à toutes les bases de données de l'instance :
GRANT SELECT, SHOW VIEW, REFERENCES, EXECUTE, TRIGGER ON *.* TO 'USERNAME'@'%';Autorisez l'outil d'extraction à répertorier toutes les bases de données disponibles sur l'instance :
GRANT SHOW DATABASES ON *.* TO 'USERNAME'@'%';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, un rattachement de réseau n'est pas requis.
Configurer un connecteur MySQL
Configurez un connecteur MySQL à l'aide de la Google Cloud console ou de l'API.
Console
Dans la Google Cloud console, accédez à la page Knowledge Catalog.
Dans le menu de navigation, dans la section Gérer, cliquez sur Connecteurs.
Cliquez sur Ajouter une connexion.
Dans la liste Connecteurs, sélectionnez la fiche MySQL.
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 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é.
- Pour Objets de métadonnées MySQL à importer, cliquez sur Parcourir pour sélectionner objets.
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 ultérieurement. Définissez les autorisations afin 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) ni l'autorisationdataplex.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.
Dans la section Nom de la configuration du connecteur, sous Nom à afficher, saisissez un nom pour la tâche d'importation de métadonnées.
Dans la section Options de programmation, configurez la fréquence de la tâche d'importation de métadonnées. Si vous sélectionnez À la demande, la tâche ne s'exécute que lorsque vous la déclenchez manuellement.
(Facultatif) Dans la section Options de notification, configurez les notifications par e-mail ou Pub/Sub en cas d'échec de la tâche.
(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 mises en scène avant de démarrer les tâches 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.
Cliquez sur Enregistrer.
REST
Utilisez la projects.locations.transferConfigs.create
méthode. Dans la TransferConfig
ressource, configurez les champs suivants :
- Définissez le champ
dataSourceIdsur"mysql". - Dans le champ
metadataDestination, remplissez l'dataplexConfigurationobjet 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 la tâche créée, Knowledge Catalog planifie la première exécution en fonction de votre configuration, ou vous pouvez la démarrer manuellement.
Rechercher et afficher des métadonnées MySQL
Dans la Google Cloud console, accédez à la page Rechercher de Knowledge Catalog.
Dans le panneau Filtres , vous pouvez filtrer les actifs 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.
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 via une recherche par mots clés, saisissez
system=MYSQL AND type=TABLE.Pour en savoir plus sur la recherche de ressources, consultez la section 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.
Vous pouvez également utiliser l' LookupContext pour récupérer le contexte LLM pour des ressources MySQL spécifiques.
Étape suivante
- Découvrez comment gérer les tâches de connecteur.