Membuat sesi
Dokumen ini menjelaskan cara membuat sesi di BigQuery. Fitur ini ditujukan bagi pengguna yang sudah memahami sesi BigQuery.
Membuat sesi
Jika ingin mengambil sekelompok aktivitas SQL Anda, buat sesi BigQuery. Setelah membuat sesi, Anda dapat menjalankan kueri interaktif dalam sesi tersebut hingga sesi tersebut dihentikan. Semua kueri dalam sesi dijalankan (diproses) di lokasi tempat sesi dibuat.
Sebelum menyelesaikan langkah-langkah ini, pastikan Anda memiliki izin yang diperlukan untuk membuat sesi.
Konsol
Di konsol Google Cloud, setiap sesi ditetapkan ke tab editor.
Di konsol Google Cloud, buka halaman BigQuery.
Klik
Tulis kueri baru. Tab editor baru akan terbuka.Klik Lainnya > Setelan kueri. Panel Setelan kueri akan muncul.
Di bagian Pengelolaan sesi, klik Gunakan mode sesi untuk mengaktifkan mode sesi.
Di Setelan tambahan > Lokasi data, pilih lokasi. Setelah sesi dibuat, semua kueri dalam sesi dibatasi untuk lokasi ini dan lokasi tidak dapat diubah.
Klik Simpan.
Tulis kueri di tab editor, lalu jalankan. Sesi baru dibuat setelah kueri pertama ini dijalankan.
bq
Buka Cloud Shell
dan jalankan perintah
bq query
berikut:
bq query \ --nouse_legacy_sql \ --create_session [--location 'SESSION_LOCATION'] \ 'SQL_STATEMENT'
dengan:
- SESSION_LOCATION: Mengikat sesi ke lokasi fisik. Membatasi semua kueri dalam sesi ke lokasi ini. Opsional.
- SQL_STATEMENT: Pernyataan SQL pertama untuk sesi Anda.
Menguji sesi Anda
Buat sesi bersama dengan tabel sementara dengan perintah ini:
bq query \
--nouse_legacy_sql \
--create_session \
--location 'asia-northeast1' \
'SELECT 1;'
Pastikan adanya hasil yang serupa dengan ini:
In session: CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ
API
Panggil metode jobs.insert atau metode jobs.query dengan resource tugas yang ditentukan.
jobs.insert
Panggil
metode jobs.insert
dengan
parameter berikut:
{ "jobReference": { "projectId": "PROJECT_ID", "jobId": "JOB_ID", ["location": "SESSION_LOCATION"] }, "configuration": { "query": { "query": "SQL_STATEMENT", "createSession": { "value": true } } } }
dengan:
- PROJECT_ID: Project yang akan membuat sesi.
- JOB_ID: Tugas yang membuat sesi.
- SESSION_LOCATION: Mengikat sesi ke lokasi fisik. Membatasi semua kueri dalam sesi ke lokasi ini. Opsional.
- SQL_STATEMENT: Pernyataan SQL pertama untuk sesi Anda.
Menguji sesi Anda
Masukkan isi permintaan berikut. Ganti myProject
dan job_123
dengan
ID project dan ID tugas.
{
"jobReference": {
"projectId": "myProject",
"jobId": "job_123"
},
"configuration": {
"query": {
"query": "SELECT 1;",
"createSession": {
"value": true
}
}
}
}
Pastikan isi respons serupa dengan ini:
{
"jobReference": {
"projectId": "myProject",
"jobId": "job_123"
},
"statistics": {
"sessionInfo": {
"sessionId": "CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ"
}
}
}
jobs.query
Panggil
metode jobs.query
dengan
parameter berikut:
{ "query": "SQL_STATEMENT", "createSession": true, ["location": "SESSION_LOCATION"] }
dengan:
- SQL_STATEMENT: Pernyataan SQL pertama untuk sesi Anda.
- SESSION_LOCATION: Mengikat sesi ke lokasi fisik. Membatasi semua kueri dalam sesi ke lokasi ini. Opsional.
Menguji sesi Anda
Masukkan isi permintaan berikut. Ganti myProject
dan job_123
dengan
ID project dan ID tugas.
{
"query": "SELECT 1;",
"createSession": true
}
Pastikan isi respons serupa dengan ini:
{
"jobReference": {
"projectId": "myProject",
"jobId": "job_123"
},
"statistics": {
"sessionInfo": {
"sessionId": "CgwKCmZhbGl1LXRlc3QQARokMDAzYjI0OWQtZ"
}
}
}