Tutorial ini menunjukkan penulisan fungsi Cloud Run HTTP yang mengirimkan kueri ke BigQuery.
Tujuan
- Tulis fungsi Cloud Run HTTP yang mengirimkan kueri ke BigQuery.
Biaya
Dalam dokumen ini, Anda akan menggunakan komponen Google Cloud yang dapat ditagih berikut:
- Cloud Run functions
- Cloud Build
- Artifact Registry
For details, see Cloud Run functions pricing.
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda,
gunakan kalkulator harga.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Functions, Cloud Build, and Artifact Registry APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Functions, Cloud Build, and Artifact Registry APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Menyiapkan lingkungan pengembangan.
Jika Anda sudah menginstal gcloud CLI, update dengan menjalankan perintah berikut:
gcloud components update
Menyiapkan aplikasi
Clone repositori aplikasi contoh ke komputer lokal Anda:
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples.git
Anda juga dapat mendownload contoh sebagai file ZIP dan mengekstraknya.
Ubah ke direktori yang berisi kode contoh fungsi Cloud Run:
cd nodejs-docs-samples/functions/v2/helloBigQuery
Lihat kode contoh: Sampel mengirimkan kueri untuk kata yang terjadi setidaknya 400 kali dalam set data yang ditentukan, dan menampilkan hasilnya.
Men-deploy fungsi
Untuk men-deploy fungsi dengan pemicu HTTP, jalankan perintah berikut di direktori yang berisi kode contoh:
gcloud functions deploy nodejs-bq-function \ --gen2 \ --runtime=nodejs22 \ --region=REGION \ --source=. \ --entry-point=helloBigQuery \ --trigger-http \ --allow-unauthenticated
Anda dapat menggunakan nilai berikut untuk flag --runtime
guna menentukan versi Node.js pilihan Anda:
nodejs18
(direkomendasikan)nodejs16
nodejs14
nodejs12
nodejs10
Flag --allow-unauthenticated
memungkinkan Anda menjangkau fungsi tanpa autentikasi.
Untuk mewajibkan autentikasi, hilangkan flag.
Memicu fungsi
Setelah fungsi selesai di-deploy, catat properti
uri
atau temukan menggunakan perintah berikut:gcloud functions describe nodejs-bq-function --gen2 --region=REGION --format="value(serviceConfig.uri)"
Kunjungi URI ini di browser Anda. Anda akan melihat daftar kata yang cocok dengan kriteria kueri, dan berapa kali setiap kata muncul di set data target.
Pembersihan
Agar tidak dikenakan biaya pada akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, hapus project yang berisi resource tersebut, atau simpan project dan hapus setiap resource-nya.
Menghapus project
Cara termudah untuk menghilangkan penagihan adalah dengan menghapus project yang Anda buat untuk tutorial.
Untuk menghapus project:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Menghapus fungsi
Menghapus fungsi Cloud Run tidak akan menghapus resource apa pun yang tersimpan di Cloud Storage.
Untuk menghapus fungsi yang Anda buat dalam tutorial ini, jalankan perintah berikut:
gcloud functions delete nodejs-bq-function --gen2 --region REGION
Anda juga dapat menghapus fungsi Cloud Run dari Konsol Google Cloud.