Per importare dati da Cloud SQL, segui questi passaggi per configurare l'accesso a Cloud SQL, creare un datastore e importare i dati.
Configurare l'accesso al bucket di staging per le istanze Cloud SQL
Quando vengono importati dati da Cloud SQL, questi vengono prima preparati in un bucket Cloud Storage. Segui questi passaggi per concedere a un'istanza Cloud SQL l'accesso ai bucket Cloud Storage.
Nella Google Cloud console, vai alla pagina SQL.
Fai clic sull'istanza Cloud SQL da cui prevedi di importare.
Copia l'identificatore del account di servizio dell'istanza, che ha l'aspetto di un indirizzo email, ad esempio
p9876-abcd33f@gcp-sa-cloud-sql.
.Vai alla pagina IAM e amministrazione.
Fai clic su Concedi l'accesso.
In Nuove entità, inserisci l'identificatore del account di servizio dell'istanza e seleziona il ruolo Cloud Storage > Storage Admin.
Fai clic su Salva.
Successivo:
Se i dati Cloud SQL si trovano nello stesso progetto di Gemini Enterprise: Vai a Importa dati da Cloud SQL.
Se i dati di Cloud SQL si trovano in un progetto diverso dal tuo progetto Gemini Enterprise: vai a Configurare l'accesso a Cloud SQL da un progetto diverso.
Configurare l'accesso a Cloud SQL da un altro progetto
Per concedere a Gemini Enterprise l'accesso ai dati Cloud SQL che si trovano in un progetto diverso, segui questi passaggi:
Sostituisci la seguente variabile
PROJECT_NUMBER
con il numero del tuo progetto Gemini Enterprise, quindi copia i contenuti del blocco di codice. Questo è l'identificatore del tuo account di servizio Gemini Enterprise:service-PROJECT_NUMBER@gcp-sa-discoveryengine.
Vai alla pagina IAM e amministrazione.
Passa al tuo progetto Cloud SQL nella pagina IAM e amministrazione e fai clic su Concedi l'accesso.
Per Nuove entità, inserisci l'identificatore dell'account di servizio e seleziona il ruolo Cloud SQL > Visualizzatore Cloud SQL.
Fai clic su Salva.
Poi, vai a Importa dati da Cloud SQL.
Importare dati da Cloud SQL
Console
Per utilizzare la console per importare i dati da Cloud SQL, segui questi passaggi:
Nella console Google Cloud , vai alla pagina Gemini Enterprise.
Vai alla pagina Datastore.
Fai clic su Crea datastore.
Nella pagina Seleziona un'origine dati, scegli Cloud SQL.
Specifica l'ID progetto, l'ID istanza, l'ID database e l'ID tabella dei dati che prevedi di importare.
Fai clic su Sfoglia e scegli una posizione Cloud Storage intermedia in cui esportare i dati, poi fai clic su Seleziona. In alternativa, inserisci la posizione direttamente nel campo
gs://
.Seleziona se attivare l'esportazione serverless. L'esportazione serverless comporta costi aggiuntivi. Per informazioni sull'esportazione serverless, consulta Ridurre al minimo l'impatto sulle prestazioni delle esportazioni nella documentazione di Cloud SQL.
Fai clic su Continua.
Seleziona una regione per il datastore.
Inserisci un nome per il tuo datastore.
Fai clic su Crea.
Per controllare lo stato dell'importazione, vai alla pagina Datastore e fai clic sul nome del datastore per visualizzarne i dettagli nella pagina Data (Dati). Quando la colonna dello stato nella scheda Attività cambia da In corso a Importazione completata, l'importazione è terminata.
A seconda delle dimensioni dei dati, l'importazione può richiedere diversi minuti o diverse ore.
REST
Per utilizzare la riga di comando per creare un datastore e importare dati da Cloud SQL, segui questi passaggi:
Crea 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"], }'
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto.DATA_STORE_ID
: l'ID del datastore. L'ID può contenere solo lettere minuscole, cifre, trattini bassi e trattini.DISPLAY_NAME
: il nome visualizzato del datastore. Questo messaggio potrebbe essere visualizzato nella console Google Cloud .
Importa i dati da 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", }'
Sostituisci quanto segue:
PROJECT_ID
: l'ID del tuo progetto Gemini Enterprise.DATA_STORE_ID
: l'ID del datastore. L'ID può contenere solo lettere minuscole, cifre, trattini bassi e trattini.SQL_PROJECT_ID
: l'ID del tuo progetto Cloud SQL.INSTANCE_ID
: l'ID dell'istanza Cloud SQL.DATABASE_ID
: l'ID del tuo database Cloud SQL.TABLE_ID
: l'ID della tabella Cloud SQL.STAGING_DIRECTORY
: facoltativo. Una directory Cloud Storage, ad esempiogs://<your-gcs-bucket>/directory/import_errors
.RECONCILIATION_MODE
: facoltativo. I valori sonoFULL
eINCREMENTAL
. Il valore predefinito èINCREMENTAL
. Se specifichiINCREMENTAL
viene eseguito un aggiornamento incrementale dei dati da Cloud SQL al tuo datastore. Esegue un'operazione di upsert, che aggiunge nuovi documenti e sostituisce quelli esistenti con documenti aggiornati con lo stesso ID. La specifica diFULL
causa una ribasatura completa dei documenti nel datastore. In altre parole, i documenti nuovi e aggiornati vengono aggiunti all'datastore e i documenti che non si trovano in Cloud SQL vengono rimossi dall'archiviodatastorei. La modalitàFULL
è utile se vuoi eliminare automaticamente i documenti che non ti servono più.
Passaggi successivi
Per collegare il datastore a un'app, crea un'app e seleziona il datastore seguendo i passaggi descritti in Crea un'app di ricerca.
Per visualizzare l'anteprima dell'aspetto dei risultati di ricerca dopo la configurazione dell'app e del datastore, consulta Visualizzare l'anteprima dei risultati di ricerca.