Creazione di sessioni
Questo documento descrive come creare sessioni in BigQuery. È rivolto agli utenti che hanno dimestichezza con le sessioni BigQuery.
Crea una sessione
Se vuoi acquisire un gruppo di attività SQL, crea una sessione BigQuery. Dopo aver creato una sessione, puoi eseguire query interattive nella tua sessione fino alla sessione termina. Tutte le query nella sessione vengono eseguiti (elaborati) nella località in cui è stata creata la sessione.
Prima di completare questi passaggi, assicurati di disporre della necessaria autorizzazioni per per creare una sessione.
Console
Nella console Google Cloud, a ogni sessione viene assegnata una scheda dell'editor.
Nella console Google Cloud, vai alla pagina BigQuery.
Fai clic su
Crea nuova query. R si apre una nuova scheda dell'editor.Fai clic su Altro > Impostazioni query. Viene visualizzato il riquadro Impostazioni query.
Nella sezione Gestione sessione, fai clic su Usa la modalità sessione per attivarla.
In Impostazioni aggiuntive > Località dei dati, seleziona l'icona in ogni località. Dopo la creazione della sessione, tutte le query in quella sessione vengono limitata a questa località e la località non può essere modificata.
Fai clic su Salva.
Scrivi una query nella scheda dell'editor ed eseguirlo. La nuova sessione viene creata dopo l'esecuzione di questa prima query.
bq
Apri Cloud Shell.
e inserisci quanto segue
Comando bq query
:
bq query \ --nouse_legacy_sql \ --create_session [--location 'SESSION_LOCATION'] \ 'SQL_STATEMENT'
dove:
- SESSION_LOCATION: associa la sessione a un posizione fisica. Limita tutte le query della sessione a questa posizione. Facoltativo.
- SQL_STATEMENT: il primo statement SQL per la sessione.
Prova la sessione
Crea una sessione e una tabella temporanea con questo comando:
bq query \
--nouse_legacy_sql \
--create_session \
--location 'asia-northeast1' \
'SELECT 1;'
Assicurati che vengano restituiti risultati simili a questi:
In session: CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ
API
Chiama il metodo jobs.insert o jobs.query con una risorsa jobs definita.
jobs.insert
Chiama il metodo
jobs.insert
con
i seguenti parametri:
{ "jobReference": { "projectId": "PROJECT_ID", "jobId": "JOB_ID", ["location": "SESSION_LOCATION"] }, "configuration": { "query": { "query": "SQL_STATEMENT", "createSession": { "value": true } } } }
dove:
- PROJECT_ID: il progetto per cui creare la sessione.
- JOB_ID: il job per cui creare la sessione.
- SESSION_LOCATION: lega la sessione a un luogo fisico. Limita tutte le query della sessione a questa posizione. Facoltativo.
- SQL_STATEMENT: il primo statement SQL per la sessione.
Testa la tua sessione
Inserisci il seguente corpo della richiesta. Sostituisci myProject
e job_123
con
l'ID di un progetto e l'ID di un job.
{
"jobReference": {
"projectId": "myProject",
"jobId": "job_123"
},
"configuration": {
"query": {
"query": "SELECT 1;",
"createSession": {
"value": true
}
}
}
}
Assicurati che il corpo della risposta sia simile a questo:
{
"jobReference": {
"projectId": "myProject",
"jobId": "job_123"
},
"statistics": {
"sessionInfo": {
"sessionId": "CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ"
}
}
}
jobs.query
Chiama il metodo
jobs.query
con
i seguenti parametri:
{ "query": "SQL_STATEMENT", "createSession": true, ["location": "SESSION_LOCATION"] }
dove:
- SQL_STATEMENT: il primo statement SQL per la sessione.
- SESSION_LOCATION: lega la sessione a un luogo fisico. Limita tutte le query della sessione a questa posizione. Facoltativo.
Testa la tua sessione
Inserisci il seguente corpo della richiesta. Sostituisci myProject
e job_123
con
l'ID di un progetto e l'ID di un job.
{
"query": "SELECT 1;",
"createSession": true
}
Assicurati che il corpo della risposta sia simile al seguente:
{
"jobReference": {
"projectId": "myProject",
"jobId": "job_123"
},
"statistics": {
"sessionInfo": {
"sessionId": "CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ"
}
}
}