Pour ingérer des données depuis Cloud SQL, suivez les étapes ci-dessous pour configurer l'accès à Cloud SQL, créer un data store et ingérer des données.
Configurer l'accès au bucket intermédiaire pour les instances Cloud SQL
Lorsque vous ingérez des données depuis Cloud SQL, elles sont d'abord transférées vers un bucket Cloud Storage. Suivez ces étapes pour accorder à une instance Cloud SQL l'accès aux buckets Cloud Storage.
Dans la console Google Cloud , accédez à la page SQL.
Cliquez sur l'instance Cloud SQL à partir de laquelle vous prévoyez d'importer les données.
Copiez l'identifiant du compte de service de l'instance, qui ressemble à une adresse e-mail (par exemple,
p9876-abcd33f@gcp-sa-cloud-sql.
).Accédez à la page IAM et administration.
Cliquez sur Accorder l'accès.
Pour Nouveaux comptes principaux, saisissez l'identifiant du compte de service de l'instance et sélectionnez le rôle Cloud Storage > Administrateur Storage.
Cliquez sur Enregistrer.
Suivant :
Si vos données Cloud SQL se trouvent dans le même projet que Gemini Enterprise : accédez à Importer des données depuis Cloud SQL.
Si vos données Cloud SQL se trouvent dans un projet différent de votre projet Gemini Enterprise, consultez Configurer l'accès à Cloud SQL depuis un autre projet.
Configurer l'accès à Cloud SQL depuis un autre projet
Pour autoriser Gemini Enterprise à accéder aux données Cloud SQL qui se trouvent dans un autre projet, procédez comme suit :
Remplacez la variable
PROJECT_NUMBER
suivante par le numéro de votre projet Gemini Enterprise, puis copiez le contenu du bloc de code. Voici l'identifiant de votre compte de service Gemini Enterprise :service-PROJECT_NUMBER@gcp-sa-discoveryengine.
Accédez à la page IAM et administration.
Basculez vers votre projet Cloud SQL sur la page IAM et administration, puis cliquez sur Accorder l'accès.
Pour Nouveaux comptes principaux, saisissez l'identifiant du compte de service et sélectionnez le rôle Cloud SQL > Lecteur Cloud SQL.
Cliquez sur Enregistrer.
Ensuite, accédez à Importer des données depuis Cloud SQL.
Importer des données depuis Cloud SQL
Console
Pour ingérer des données depuis Cloud SQL à l'aide de la console, procédez comme suit :
Dans la console Google Cloud , accédez à la page Gemini Enterprise.
Accédez à la page Datastores.
Cliquez sur Créer un datastore.
Sur la page Sélectionner une source de données, sélectionnez Cloud SQL.
Spécifiez l'ID du projet, l'ID de l'instance, l'ID de la base de données et l'ID de la table des données que vous prévoyez d'importer.
Cliquez sur Parcourir, puis sélectionnez un emplacement Cloud Storage intermédiaire vers lequel exporter les données. Cliquez ensuite sur Sélectionner. Vous pouvez également saisir l'emplacement directement dans le champ
gs://
.Indiquez si vous souhaitez activer l'exportation sans serveur. L'exportation sans serveur entraîne des coûts supplémentaires. Pour en savoir plus sur l'exportation sans serveur, consultez Minimiser l'impact des exportations sur les performances dans la documentation Cloud SQL.
Cliquez sur Continuer.
Choisissez une région pour votre datastore.
Attribuez un nom à votre datastore
Cliquez sur Créer.
Pour vérifier l'état de l'ingestion, accédez à la page Datastores, puis cliquez sur le nom de votre datastore pour afficher des informations détaillées sur la page Données. Lorsque la colonne "État" de l'onglet Activité passe de En cours à Importation terminée, l'ingestion est terminée.
Selon la taille de vos données, l'ingestion peut prendre de quelques minutes ou plusieurs heures.
REST
Pour créer un data store et ingérer des données à partir de Cloud SQL à l'aide de la ligne de commande, procédez comme suit :
Créer un datastore
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_SEARCH"], }'
Remplacez les éléments suivants :
PROJECT_ID
: par l'ID du projet.DATA_STORE_ID
: ID du data store. L'ID ne peut contenir que des lettres minuscules, des chiffres, des traits de soulignement et des traits d'union.DISPLAY_NAME
: nom à afficher du data store. Il peut s'afficher dans la console Google Cloud .
Importez des données depuis Cloud SQL.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \ -d '{ "cloudSqlSource": { "projectId": "SQL_PROJECT_ID", "instanceId": "INSTANCE_ID", "databaseId": "DATABASE_ID", "tableId": "TABLE_ID", "gcsStagingDir": "STAGING_DIRECTORY" }, "reconciliationMode": "RECONCILIATION_MODE", "autoGenerateIds": "AUTO_GENERATE_IDS", "idField": "ID_FIELD", }'
Remplacez les éléments suivants :
PROJECT_ID
: ID de votre projet Gemini Enterprise.DATA_STORE_ID
: ID du data store. L'ID ne peut contenir que des lettres minuscules, des chiffres, des traits de soulignement et des traits d'union.SQL_PROJECT_ID
: ID de votre projet Cloud SQL.INSTANCE_ID
: ID de votre instance Cloud SQL.DATABASE_ID
: ID de votre base de données Cloud SQL.TABLE_ID
: ID de votre table Cloud SQL.STAGING_DIRECTORY
(facultatif) : Un répertoire Cloud Storage, par exemplegs://<your-gcs-bucket>/directory/import_errors
.RECONCILIATION_MODE
(facultatif) : Les valeurs sontFULL
etINCREMENTAL
. La valeur par défaut estINCREMENTAL
. Si vous spécifiezINCREMENTAL
, les données de Cloud SQL sont actualisées de manière incrémentielle dans votre data store. Cette opération d'upsert ajoute de nouveaux documents et remplace les documents existants par des documents mis à jour portant le même ID. Si vous spécifiezFULL
, les documents de votre data store seront entièrement rebasés. En d'autres termes, les documents nouveaux et modifiés sont ajoutés à votre data store, et les documents qui ne se trouvent pas dans Cloud SQL en sont supprimés. Le modeFULL
est utile si vous souhaitez supprimer automatiquement les documents dont vous n'avez plus besoin.
Étapes suivantes
Pour associer votre data store à une application, créez une application et sélectionnez votre data store en suivant les étapes décrites dans Créer une application de recherche.
Pour prévisualiser l'apparence de vos résultats de recherche une fois votre application et votre datastore configurés, consultez Prévisualiser les résultats de recherche.