Dokumen ini menunjukkan cara melakukan hal berikut di Dataform:
- Jadwalkan operasi dengan konfigurasi alur kerja.
- Menjadwalkan eksekusi dengan Workflows dan Cloud Scheduler.
- Jadwalkan eksekusi dengan Managed Service untuk Apache Airflow.
- Mengotomatiskan eksekusi dengan pemicu Cloud Build.
Tabel berikut membandingkan metode tersebut:
| Metode | Sasaran | Jenis Pemicu |
|---|---|---|
| Konfigurasi alur kerja | Produksi berbasis waktu standar berjalan dalam Dataform. | Berbasis waktu |
| Workflows dan Cloud Scheduler | Orkestrasi Dataform yang ringan dan serverless bersama dengan API lainnya. | Berdasarkan waktu atau berbasis peristiwa |
| Managed Airflow | Pipeline kompleks dengan dependensi di luar BigQuery. | Berbasis waktu atau berbasis peristiwa |
| Pemicu Cloud Build | Mengotomatiskan rilis segera setelah Git push. | Berbasis peristiwa |
Sebelum memulai
Untuk menjadwalkan eksekusi dengan konfigurasi alur kerja atau menjadwalkan eksekusi dengan alur kerja dan Cloud Scheduler, lakukan hal berikut:
Di konsol Google Cloud , buka halaman Dataform.
Pilih atau buat repositori.
Buat konfigurasi rilis.
Untuk menjadwalkan eksekusi dengan Managed Service untuk Apache Airflow, lakukan hal berikut:
- Pilih atau buat repositori Dataform.
- Memberikan akses Dataform ke BigQuery.
- Pilih atau buat ruang kerja Dataform.
- Buat minimal satu tabel.
- Buat lingkungan Managed Airflow 2.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk menyelesaikan tugas dalam dokumen ini, minta administrator Anda untuk memberi Anda peran IAM berikut:
- Admin Dataform (
roles/dataform.admin) di repositori - Pengguna Akun Layanan (
roles/iam.serviceAccountUser) di akun layanan kustom - Composer Worker (
roles/composer.worker) di akun layanan lingkungan Managed Airflow -
Mengotomatiskan eksekusi dengan Cloud Build:
- Service Account Admin (
roles/iam.serviceAccountAdmin) di akun layanan kustom - Cloud Build Editor (
roles/cloudbuild.builds.editor) di project
- Service Account Admin (
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Untuk menggunakan akun layanan kustom saat membuat konfigurasi alur kerja, beri akses ke akun layanan kustom.
Untuk menggunakan kredensial pengguna untuk Akun Google saat membuat konfigurasi alur kerja (Pratinjau), beri akses ke Akun Google.
Untuk mengaktifkan eksekusi terjadwal untuk konfigurasi alur kerja, Anda harus memberikan izin iam.serviceAccounts.actAs kepada
agen layanan Dataform default
untuk akun layanan kustom yang digunakan dalam konfigurasi alur kerja. Izin
ini tersedia dalam
peran Pengguna Akun Layanan
(roles/iam.serviceAccountUser).
Untuk mengetahui informasi selengkapnya, lihat
Menggunakan mode bertindak sebagai yang ketat.
Untuk meningkatkan keamanan penjadwalan, lihat Menerapkan izin penjadwalan yang ditingkatkan.
Menjadwalkan eksekusi dengan konfigurasi alur kerja
Bagian ini menunjukkan cara membuat konfigurasi alur kerja di Dataform untuk menjadwalkan dan mengonfigurasi eksekusi alur kerja. Anda dapat menggunakan konfigurasi alur kerja untuk menjalankan alur kerja Dataform sesuai jadwal.
Tentang konfigurasi alur kerja
Untuk menjadwalkan eksekusi Dataform dari semua atau tindakan alur kerja yang dipilih di BigQuery, Anda dapat membuat konfigurasi alur kerja. Dalam konfigurasi alur kerja, Anda memilih konfigurasi rilis kompilasi, memilih tindakan alur kerja untuk dieksekusi, dan menetapkan jadwal eksekusi.
Kemudian, selama proses terjadwal konfigurasi alur kerja Anda, Dataform men-deploy pilihan tindakan Anda dari hasil kompilasi terbaru dalam konfigurasi rilis ke BigQuery. Anda juga dapat memicu eksekusi konfigurasi alur kerja secara manual dengan workflowConfigs Dataform API.
Konfigurasi alur kerja Dataform berisi setelan jalankan berikut:
- ID konfigurasi alur kerja.
- Konfigurasi rilis.
Akun layanan.
Ini adalah akun layanan kustom yang terkait dengan konfigurasi alur kerja. Anda dapat memilih akun layanan kustom yang terkait dengan project Google Cloud Anda, atau Anda dapat memasukkan akun layanan lain secara manual. Secara default, konfigurasi alur kerja menggunakan akun layanan yang sama dengan repositorinya.
Kredensial akun layanan adalah metode otorisasi default untuk pembuatan dan eksekusi konfigurasi alur kerja terjadwal.
Kredensial pengguna Akun Google (Pratinjau)
Kredensial pengguna Akun Google adalah metode otorisasi default untuk pembuatan dan eksekusi konfigurasi alur kerja manual yang tidak terjadwal. Untuk mengetahui informasi selengkapnya, lihat Memberikan otorisasi ke Akun Google Anda.
Tindakan alur kerja yang akan dijalankan:
- Semua tindakan.
- Pemilihan tindakan.
- Pemilihan tag.
Jadwal dan zona waktu eksekusi.
Membuat konfigurasi alur kerja
Untuk membuat konfigurasi alur kerja Dataform, ikuti langkah-langkah berikut:
- Di repositori Anda, buka Rilis & Penjadwalan.
- Di bagian Konfigurasi alur kerja, klik Buat.
Di panel Buat konfigurasi alur kerja, di kolom ID Konfigurasi, masukkan ID unik untuk konfigurasi alur kerja.
ID hanya boleh berisi angka, huruf, tanda hubung, dan garis bawah.
Di menu Konfigurasi rilis, pilih konfigurasi rilis kompilasi.
Di bagian Authentication, beri otorisasi konfigurasi alur kerja dengan kredensial pengguna Akun Google Anda atau akun layanan.
Untuk menggunakan kredensial pengguna Akun Google Anda (Pratinjau), pilih Jalankan dengan kredensial pengguna saya.
Opsional: Di bagian Opsi akses yang diperpanjang, pilih layanan tambahan yang diperlukan alur kerja Anda:
- Knowledge Catalog: Mengizinkan pembaruan metadata Knowledge Catalog Google Cloud .
- Google Drive: Memungkinkan akses hanya baca ke file Google Drive.
- Bigtable: Mengizinkan akses hanya baca ke data Google Bigtable.
Untuk menggunakan akun layanan kustom, pilih Jalankan dengan akun layanan yang dipilih, lalu pilih akun layanan yang terkait dengan project yang dapat Anda akses. Google Cloud Jika Anda tidak memilih akun layanan, konfigurasi alur kerja akan menggunakan akun layanan repositori.
Opsional: Di kolom Schedule frequency, masukkan frekuensi eksekusi dalam format unix-cron.
Untuk memverifikasi bahwa Dataform menjalankan hasil kompilasi terbaru dalam konfigurasi rilis yang sesuai, berikan jeda minimal satu jam antara waktu pembuatan hasil kompilasi dan waktu eksekusi terjadwal.
Opsional: Di menu Zona waktu, pilih zona waktu untuk menjalankan.
Zona waktu default adalah UTC.
Pilih tindakan alur kerja yang akan dijalankan:
- Untuk menjalankan seluruh alur kerja, klik Semua tindakan.
- Untuk menjalankan tindakan yang dipilih dalam alur kerja, klik Pemilihan tindakan, lalu pilih tindakan.
- Untuk menjalankan tindakan dengan tag yang dipilih, klik Pemilihan tag, lalu pilih tag.
- Opsional: Untuk menjalankan tindakan atau tag yang dipilih dan dependensinya, pilih opsi Sertakan dependensi.
- Opsional: Untuk menjalankan tindakan atau tag yang dipilih dan dependensinya, pilih opsi Sertakan dependensi.
Opsional: Untuk membangun ulang semua tabel dari awal, pilih opsi Jalankan dengan refresh penuh.
Tanpa opsi ini, Dataform akan memperbarui tabel inkremental tanpa membangunnya kembali dari awal.
Opsional: Tetapkan prioritas tugas kueri BigQuery dengan opsi Jalankan sebagai tugas interaktif dengan prioritas tinggi (default). Secara default, BigQuery menjalankan kueri sebagai tugas kueri interaktif, yang dimaksudkan untuk mulai berjalan secepat mungkin. Menghapus centang pada opsi ini akan menjalankan kueri sebagai tugas kueri batch, yang memiliki prioritas lebih rendah.
Klik Create. Jika Anda memilih Jalankan dengan kredensial pengguna saya untuk metode autentikasi, Anda harus mengizinkan Akun Google Anda (Pratinjau).
Misalnya, konfigurasi alur kerja berikut menjalankan tindakan dengan tag hourly setiap jam di zona waktu CEST:
- ID Konfigurasi:
production-hourly - Konfigurasi rilis: -
- Frekuensi:
0 * * * * - Zona waktu:
Central European Summer Time (CEST) - Pemilihan tindakan alur kerja: pemilihan tag, tag
hourly
Memberi otorisasi pada Akun Google Anda
Untuk mengautentikasi resource dengan kredensial pengguna Akun Google Anda, Anda harus memberikan izin secara manual agar pipeline BigQuery mendapatkan token akses untuk Akun Google Anda dan mengakses data sumber atas nama Anda. Anda dapat memberikan persetujuan manual dengan antarmuka dialog OAuth. Jika Anda memilih