Lorsque vous utilisez l'agent d'ingénierie contextuelle, il peut créer et importer automatiquement des ensembles de contextes à partir de votre CLI. Ce document explique comment créer, modifier et supprimer des ensembles de contexte dans AlloyDB pour PostgreSQL Studio lorsque vous souhaitez utiliser une interface visuelle dans la console Google Cloud pour gérer les fichiers d'ensembles de contexte. Lorsque vous créez un ensemble de contexte dans AlloyDB Studio, AlloyDB Studio le stocke dans le groupe d'ensembles de contexte default du projet pour la région sélectionnée et l'associe à la base de données actuelle. Les noms des ensembles de contexte (et les ID d'ensembles de contexte dérivés) doivent être uniques dans le groupe d'ensembles de contexte default du projet pour une région donnée, sur l'ensemble des bases de données et des instances. Dans AlloyDB Studio, la création d'un ensemble de contexte dont l'ID dérivé existe déjà échoue à la validation. Pour écraser son contenu tout en conservant ses associations de base de données, modifiez l'ensemble de contexte existant. L'importation directe via l'agent d'ingénierie de contexte ou l'API Dataplex avec un ID d'ensemble de contextes existant remplace son contenu et, si spécifié, ses associations de base de données.
La liste Ensembles de contexte d'AlloyDB Studio n'affiche que les ensembles de contexte du groupe d'ensembles de contexte default dans toutes les régions prises en charge associées à la base de données actuelle. Les ensembles de contexte créés pour une autre base de données ou créés via l'API sans associer la ressource de base de données dans databases (ou dans un groupe d'ensembles de contexte personnalisé) n'apparaissent pas dans la liste AlloyDB Studio.
Avant de commencer
Avant de créer ou d'importer un ensemble de contextes, assurez-vous de remplir les conditions préalables suivantes.
Les ensembles de contexte peuvent être créés dans les régions us-central1, us-east1, europe-west4 et asia-southeast1.
Activer les services requis
Activez les services suivants pour votre projet :Préparer un cluster, une instance et une base de données AlloyDB pour PostgreSQL
Assurez-vous d'avoir accès à un cluster et à une instance AlloyDB existants, ou créez-en un.Pour suivre ce tutoriel, vous devez disposer d'une base de données dans votre instance AlloyDB. Pour en savoir plus, consultez Créer une base de données.
Rôles et autorisations nécessaires
- Activez Identity and Access Management#39;authentification IAM pour les bases de données sur l'instance en définissant l'indicateur de base de données
alloydb.iam_authenticationsuron(alloydb.iam_authentication=on). Pour en savoir plus, consultez Activer et désactiver l'authentification IAM. - Ajoutez un utilisateur ou un compte de service IAM au cluster au niveau de la base de données. Pour en savoir plus, consultez Gérer l'authentification IAM.
- Attribuez les rôles
roles/alloydb.databaseUser,roles/serviceusage.serviceUsageConsumeretroles/geminidataanalytics.queryDataUserà l'utilisateur IAM au niveau du projet. Pour en savoir plus, consultez Ajouter une liaison de stratégie IAM pour un projet. - Pour créer, importer et gérer des ensembles de contexte, attribuez le rôle Éditeur de catalogue Dataplex (
roles/dataplex.catalogEditor) ou Administrateur de catalogue Dataplex (roles/dataplex.catalogAdmin) à l'utilisateur IAM au niveau du projet. Pour en savoir plus, consultez Autorisations des ensembles de contextes. - Vous devez également accorder des droits de lecture seule sur la base de données à l'utilisateur ou au compte de service IAM.
GRANT SELECT ON ALL TABLES IN SCHEMA public TO "USER_NAME";
Remplacez USER_NAME par l'adresse e-mail d'un utilisateur ou l'adresse du compte de service sans le suffixe.(par exemple,my-sa@my-project.iam). Vous devez placer l'identifiant entre guillemets, car il contient des caractères spéciaux (@ et .).
Pour en savoir plus, consultez Accorder les autorisations de base de données appropriées aux utilisateurs IAM.
Accorder l'autorisation executesql à l'instance AlloyDB pour PostgreSQL
Pour accorder l'autorisation executesql à l'instance AlloyDB pour PostgreSQL et définir le champ d'instance dataApiAccess sur ENABLED (obligatoire pour QueryData, même si la valeur par défaut autorise certains services Google Cloud internes tels qu'AlloyDB Studio), utilisez la commande curl suivante :
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
-H "x-goog-user-project: PROJECT_ID" \
https://alloydb.googleapis.com/v1beta/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/instances/INSTANCE_ID?updateMask=dataApiAccess \
-d '{
"dataApiAccess": "ENABLED"
}'
PROJECT_ID: ID de votre projet Google Cloud .LOCATION: région où se trouve votre cluster AlloyDB.CLUSTER_ID: ID de votre cluster AlloyDB.INSTANCE_ID: ID de votre instance AlloyDB.
Créer un ensemble de contextes
Pour créer un ensemble de contextes, procédez comme suit :
Dans la console Google Cloud , accédez à la page AlloyDB.
Sélectionnez un cluster dans la liste.
Dans le menu de navigation, cliquez sur AlloyDB Studio.
Connectez-vous à AlloyDB Studio à l'aide de l'authentification IAM.
Dans le volet Explorateur, à côté de Ensembles de contexte, cliquez sur Afficher les actions.
Cliquez sur Créer un ensemble de contextes.
Dans Nom de l'ensemble de contexte, indiquez un nom unique pour l'ensemble de contexte. Dans AlloyDB Studio, le nom doit comporter entre 4 et 30 caractères et ne peut pas commencer par un espace. Studio dérive l'ID de l'ensemble de contextes en convertissant le nom en minuscules et en remplaçant les caractères non alphanumériques par des traits d'union (
-). L'ID de l'ensemble de contextes dérivé doit être unique dans le groupe d'ensembles de contextesdefaultdu projet pour la région sélectionnée. Par exemple, le nom de l'ensemble de contextesquerydata_e2e_testest associé à l'ID d'ensemble de contextesquerydata-e2e-test. Lorsque vous importez un ensemble de contextes directement à l'aide de l'agent d'ingénierie de contexte ou de l'API Dataplex, l'ID de l'ensemble de contextes est sensible à la casse, ne peut pas contenir de barres obliques (/) et n'est pas limité à 4 à 30 caractères ni à des caractères alphanumériques, des traits d'union et des traits de soulignement.Facultatif. Dans Description de l'ensemble de contextes, ajoutez une description pour votre ensemble de contextes.
Facultatif. Pour importer un fichier d'ensemble de contexte, cliquez sur Parcourir dans la section Importer un fichier d'ensemble de contexte, puis sélectionnez le fichier d'ensemble de contexte.
Facultatif. Pour choisir une région pour l'ensemble de contextes, cliquez sur Afficher les options avancées, puis sélectionnez une région dans Sélectionner un emplacement (par défaut,
us-east1à chaque création). Si vous choisissez une région autre queus-east1, sélectionnez-la avant de saisir le nom de l'ensemble de contextes afin qu'AlloyDB Studio valide l'unicité du nom dans cette région.Cliquez sur Créer.
Créer des ensembles de contextes
Si vous avez créé un ensemble de contextes vide dans Studio ou si vous souhaitez en mettre à jour un existant, suivez les étapes de la section Créer et optimiser des ensembles de contextes avec l'agent d'ingénierie de contexte pour générer et optimiser un fichier d'ensemble de contextes. L'agent d'ingénierie contextuelle peut créer et importer votre ensemble de contexte directement depuis la CLI. Vous pouvez également modifier votre ensemble de contexte dans Studio pour l'importer manuellement.
Modifier un ensemble de contextes
Pour modifier un ensemble de contextes, procédez comme suit :
Dans la console Google Cloud , accédez à la page AlloyDB.
Sélectionnez un cluster dans la liste.
Dans le menu de navigation, cliquez sur AlloyDB Studio.
Connectez-vous à AlloyDB Studio à l'aide de l'authentification IAM.
Cliquez sur Afficher les actions à côté de l'ensemble de contextes que vous souhaitez modifier.
Cliquez sur Modifier l'ensemble de contextes.
Facultatif. Modifiez la description de l'ensemble de contextes.
Cliquez sur Parcourir dans la section Importer un fichier d'ensemble de contextes, puis sélectionnez le fichier d'ensemble de contextes.
Cliquez sur Enregistrer.
Supprimer un ensemble de contextes
Pour supprimer un ensemble de contextes, procédez comme suit :
Dans la console Google Cloud , accédez à la page AlloyDB.
Sélectionnez un cluster dans la liste.
Dans le menu de navigation, cliquez sur AlloyDB Studio.
Connectez-vous à AlloyDB Studio à l'aide de l'authentification IAM.
Cliquez sur Afficher les actions à côté de l'ensemble de contextes que vous souhaitez supprimer.
Cliquez sur Supprimer l'ensemble de contexte.
Dans la boîte de dialogue de confirmation Supprimer l'ensemble de contextes, saisissez l'ID de l'ensemble de contextes.
Cliquez sur Confirmer pour supprimer l'ensemble de contextes.
Étapes suivantes
- En savoir plus sur les ensembles de contexte
- Découvrez comment tester QueryData dans AlloyDB Studio.
- Découvrez comment créer et optimiser des ensembles de contextes avec l'agent d'ingénierie de contexte.
- Découvrez comment intégrer QueryData à une application.