Mengelola rutinitas
Di BigQuery, rutinitas adalah jenis resource yang mencakup hal-hal berikut:
- Prosedur tersimpan.
- Fungsi yang ditentukan pengguna (UDF), termasuk fungsi jarak jauh.
- Fungsi tabel.
Dokumen ini menjelaskan tugas-tugas yang umum untuk semua jenis rutinitas di BigQuery.
Izin
Untuk menjalankan rutinitas, Anda harus memiliki izin bigquery.routines.get
pada
set data yang berisi rutinitas tersebut.
Secara default, Anda juga memerlukan izin untuk mengakses resource apa pun yang dirujuk rutinitas, seperti tabel atau tampilan. Untuk fungsi UDF dan tabel, Anda dapat mengizinkan fungsi untuk mengakses resource tersebut atas nama pemanggil. Untuk mengetahui informasi selengkapnya, lihat Fungsi yang diotorisasi.
Membuat rutinitas
Untuk membuat rutinitas, Anda harus memiliki izin bigquery.routines.create
.
Bergantung pada jenis rutinitas, jalankan salah satu pernyataan DDL berikut:
Panggil metode routines.insert
dengan
resource Routine
yang ditentukan.
Membuat daftar rutinitas
Untuk membuat daftar rutinitas dalam set data, Anda harus memiliki izin bigquery.routines.get
dan
bigquery.routines.list
.
Di konsol Google Cloud, buka halaman BigQuery.
Di panel Explorer, luaskan project Anda dan pilih set data.
Perluas daftar Rutinitas.
Buat kueri tampilan INFORMATION_SCHEMA.ROUTINES
:
Di Konsol Google Cloud, buka halaman BigQuery.
Di editor kueri, masukkan pernyataan berikut:
SELECT
COLUMN_LIST FROM {DATASET |REGION }.INFORMATION_SCHEMA.ROUTINES;Klik
Run.
Untuk informasi selengkapnya tentang cara menjalankan kueri, lihat Menjalankan kueri interaktif.
Ganti kode berikut:
- COLUMN_LIST: daftar kolom yang dipisahkan koma dari
tampilan
INFORMATION_SCHEMA.ROUTINES
. - DATASET: nama set data di project Anda.
- REGION: penentu region.
Contoh:
SELECT routine_name, routine_type, routine_body FROM mydataset.INFORMATION_SCHEMA.ROUTINES;
+------------------+----------------+--------------+
| routine_name | routine_type | routine_body |
+------------------+----------------+--------------+
| AddFourAndDivide | FUNCTION | SQL |
| create_customer | PROCEDURE | SQL |
| names_by_year | TABLE FUNCTION | SQL |
+------------------+----------------+--------------+
Gunakan perintah bq ls
dengan flag --routines
:
bq ls --routinesDATASET
Ganti kode berikut:
- DATASET: nama set data di project Anda.
Contoh:
bq ls --routines mydataset
Id Routine Type Language Creation Time Last Modified Time
------------------ ----------------------- ---------- ----------------- --------------------
AddFourAndDivide SCALAR_FUNCTION SQL 05 May 01:12:03 05 May 01:12:03
create_customer PROCEDURE SQL 21 Apr 19:55:51 21 Apr 19:55:51
names_by_year TABLE_VALUED_FUNCTION SQL 01 Sep 22:59:17 01 Sep 22:59:17
Panggil metode routines.list
dengan ID set data.
Melihat isi rutinitas
Untuk melihat isi rutinitas, Anda harus memiliki izin bigquery.routines.get
.
Di konsol Google Cloud, buka halaman BigQuery.
Di panel Explorer, luaskan project Anda dan pilih set data.
Perluas daftar Rutinitas.
Pilih rutinitas. Isi rutinitas tercantum di bagian Kueri rutinitas.
Pilih kolom routine_definition
dari
tampilan INFORMATION_SCHEMA.ROUTINES
:
Di konsol Google Cloud, buka halaman BigQuery.
Di editor kueri, masukkan pernyataan berikut:
SELECT routine_definition FROM {
DATASET |REGION }.INFORMATION_SCHEMA.ROUTINES WHERE routine_name =ROUTINE_NAME ;Klik
Run.
Untuk informasi selengkapnya tentang cara menjalankan kueri, lihat Menjalankan kueri interaktif.
Ganti kode berikut:
- DATASET: nama set data di project Anda.
- REGION: penentu region.
- ROUTINE_NAME: nama rutinitas.
Contoh:
SELECT routine_definition FROM mydataset.INFORMATION_SCHEMA.ROUTINES WHERE routine_name = 'AddFourAndDivide';
+--------------------+
| routine_definition |
+--------------------+
| (x + 4) / y |
+--------------------+
Gunakan perintah bq show
dengan flag --routine
:
bq show --routineDATASET .ROUTINE_NAME
Ganti kode berikut:
- DATASET: nama set data di project Anda.
- ROUTINE_NAME: nama rutinitas.
Contoh:
bq show --routine mydataset.AddFourAndDivide
Id Routine Type Language Signature Definition Creation Time Last Modified Time
------------------ ----------------- ---------- ------------------------------- ------------- ----------------- --------------------
AddFourAndDivide SCALAR_FUNCTION SQL (x INT64, y INT64) -> FLOAT64 (x + 4) / y 05 May 01:12:03 05 May 01:12:03
Panggil metode routines.get
dengan ID set data dan nama rutinitas. Isi rutinitas ditampilkan dalam objek Routine
.
Menghapus rutinitas
Untuk menghapus rutinitas, Anda harus memiliki izin bigquery.routines.delete
.
Di konsol Google Cloud, buka halaman BigQuery.
Di panel Explorer, luaskan project Anda dan pilih set data.
Perluas daftar Rutinitas.
Pilih rutinitas.
Luaskan opsi
Tindakan, lalu klik Hapus.Ketikkan
"delete"
di dialog, lalu klik Hapus untuk mengonfirmasi.
Bergantung pada jenis rutinitas, jalankan salah satu pernyataan DDL berikut:
- Prosedur yang tersimpan:
DROP PROCEDURE
- Fungsi yang ditentukan pengguna:
DROP FUNCTION
- Fungsi tabel:
DROP TABLE FUNCTION
Contoh:
DROP FUNCTION IF EXISTS mydataset.AddFourAndDivide
Gunakan perintah bq rm
dengan flag --routine
:
bq rm --routineDATASET .ROUTINE_NAME
Ganti kode berikut:
- DATASET: nama set data di project Anda.
- ROUTINE_NAME: nama rutinitas.
Contoh:
bq rm --routine mydataset.AddFourAndDivide
Panggil metode routines.delete
dengan ID set data dan nama rutinitas.