Dataform adalah layanan serverless bagi analis data untuk mengembangkan dan men-deploy tabel, tabel inkremental, atau tampilan ke BigQuery. Dataform menawarkan lingkungan web untuk pengembangan alur kerja SQL, koneksi dengan GitHub, GitLab, Azure DevOps Services, dan Bitbucket, continuous integration, deployment berkelanjutan, dan eksekusi alur kerja.
Repositories
Setiap project Dataform disimpan di repositori. Repositori Dataform menyimpan kumpulan file konfigurasi JSON, file SQLX, dan file JavaScript.
Repositori formulir data berisi jenis file berikut:
File konfigurasi
File Config JSON atau SQLX dapat Anda gunakan untuk mengonfigurasi alur kerja SQL Anda. Class tersebut berisi konfigurasi umum, jadwal eksekusi, atau skema untuk membuat tabel dan tampilan baru.
Definisi
Definisinya adalah file SQLX dan JavaScript yang menentukan tabel, tampilan baru, dan operasi SQL tambahan untuk dijalankan di BigQuery.
Mencakup
Includes adalah file JavaScript tempat Anda dapat menentukan variabel dan fungsi yang akan digunakan dalam project.
Setiap repositori Dataform terhubung ke akun layanan. Anda dapat memilih akun layanan saat membuat repositori atau mengedit akun layanan nanti.
Secara default, Dataform menggunakan akun layanan yang berasal dari nomor project Anda dalam format berikut:
service-YOUR_PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Kontrol versi
Dataform menggunakan sistem kontrol versi Git untuk menyimpan data setiap perubahan yang dilakukan pada file project dan mengelola versi file.
Setiap repositori Dataform dapat mengelola repositori Git-nya sendiri, atau terhubung ke repositori Git pihak ketiga jarak jauh. Anda dapat menghubungkan repositori Dataform ke GitHub, GitLab, Azure DevOps Services, atau repositori Bitbucket.
Pengguna mengontrol versi kode alur kerja SQL di dalam ruang kerja Dataform. Di ruang kerja Dataform, Anda dapat menarik perubahan dari repositori, meng-commit semua perubahan atau perubahan yang dipilih, dan mengirimnya ke cabang Git repositori.
Pengembangan alur kerja
Di Dataform, Anda melakukan perubahan pada file dan direktori di dalam ruang kerja pengembangan. Ruang kerja pengembangan adalah salinan virtual yang dapat diedit dari konten repositori Git. Dataform mempertahankan status file di ruang kerja pengembangan Anda di antara sesi.
Di ruang kerja pengembangan, Anda dapat mengembangkan tindakan alur kerja SQL menggunakan Inti bentuk data dengan SQLX dan JavaScript, atau secara eksklusif dengan JavaScript. Anda dapat memformat kode inti Dataform atau JavaScript secara otomatis.
Setiap elemen alur kerja Dataform SQL, seperti tabel atau pernyataan, terkait dengan tindakan yang dilakukan Dataform di BigQuery. Misalnya, file definisi tabel adalah tindakan membuat atau memperbarui tabel di BigQuery.
Di ruang kerja Dataform, Anda dapat mengembangkan tindakan alur kerja SQL berikut:
- Deklarasi data sumber
- Tabel dan tampilan
- Tabel inkremental
- Tabel partisi dan cluster
- Dependensi antar-tindakan
- Dokumentasi tabel
- Operasi SQL kustom
- Label BigQuery
- Tag kebijakan BigQuery
- Tag formulir data
- Pengujian kualitas data, yang disebut pernyataan
Anda dapat menggunakan JavaScript untuk menggunakan kembali kode alur kerja Dataform SQL dengan cara berikut:
- Di seluruh file dengan enkapsulasi kode
- Di seluruh repositori dengan include
- Di repositori dengan paket
Dataform mengompilasi kode alur kerja SQL di ruang kerja Anda secara real-time. Di ruang kerja, Anda dapat melihat kueri yang dikompilasi dan detail tindakan dalam setiap file. Anda juga dapat melihat status kompilasi dan error di file yang diedit atau di repositori.
Untuk menguji output kueri SQL yang dikompilasi sebelum mengeksekusinya ke BigQuery, Anda dapat menjalankan pratinjau kueri di ruang kerja Dataform.
Untuk memeriksa seluruh alur kerja SQL yang ditentukan di ruang kerja, Anda dapat melihat grafik kompilasi interaktif yang menunjukkan semua tindakan yang dikompilasi dalam alur kerja SQL Anda dan hubungan di antara tindakan tersebut.
Kompilasi alur kerja
Dataform menggunakan setelan kompilasi default,
yang dikonfigurasi di dataform.json
,
untuk mengompilasi kode alur kerja SQL
di ruang kerja Anda ke SQL secara real time,
untuk membuat hasil kompilasi ruang kerja.
Anda dapat mengganti setelan kompilasi untuk menyesuaikan cara Dataform mengompilasi alur kerja SQL Anda menjadi hasil kompilasi.
Dengan penggantian kompilasi ruang kerja, Anda dapat mengonfigurasi penggantian kompilasi untuk semua ruang kerja di repositori. Anda dapat menetapkan penggantian ruang kerja dinamis untuk membuat hasil kompilasi yang disesuaikan untuk setiap ruang kerja, sehingga mengubah ruang kerja menjadi lingkungan pengembangan yang terisolasi. Anda dapat mengganti project Google Cloud tempat Dataform akan mengeksekusi konten ruang kerja, menambahkan awalan ke nama semua tabel yang dikompilasi, dan menambahkan akhiran ke skema default.
Dengan konfigurasi rilis, Anda dapat mengonfigurasi template setelan kompilasi untuk membuat hasil kompilasi repositori Dataform. Dalam konfigurasi rilis, Anda dapat mengganti project Google Cloud tempat Dataform akan menjalankan hasil kompilasi, menambahkan awalan ke nama semua tabel yang dikompilasi, menambahkan akhiran skema default, dan menambahkan variabel kompilasi. Anda juga dapat menetapkan frekuensi pembuatan hasil kompilasi. Untuk menjadwalkan eksekusi hasil kompilasi yang dibuat dalam konfigurasi rilis yang dipilih, Anda dapat membuat konfigurasi alur kerja.
Eksekusi alur kerja
Selama eksekusi alur kerja, Dataform menjalankan hasil kompilasi alur kerja SQL untuk membuat atau memperbarui aset di BigQuery.
Untuk membuat atau memuat ulang tabel dan tampilan yang ditentukan dalam alur kerja SQL di BigQuery, Anda dapat memulai eksekusi alur kerja secara manual di ruang kerja pengembangan atau menjadwalkan eksekusi.
Anda dapat menjadwalkan eksekusi Dataform di BigQuery dengan cara berikut:
- Buat konfigurasi alur kerja untuk menjadwalkan eksekusi hasil kompilasi yang dibuat dalam konfigurasi rilis
- Menjadwalkan eksekusi dengan Cloud Composer
- Menjadwalkan eksekusi dengan Workflows dan Cloud Scheduler
Untuk men-debug error, Anda dapat memantau eksekusi dengan cara berikut:
- Lihat log eksekusi Dataform mendetail
- Melihat log audit untuk Dataform
- Melihat log Cloud Logging untuk Dataform
Langkah selanjutnya
- Untuk mempelajari Dataform core lebih lanjut, lihat Ringkasan inti Dataform.
- Untuk mempelajari repositori Dataform lebih lanjut, lihat Pengantar repositori.
- Untuk mempelajari ruang kerja Dataform lebih lanjut, lihat Pengantar pengembangan di ruang kerja.
- Untuk mempelajari lebih lanjut cara mengembangkan alur kerja SQL di Dataform, lihat Pengantar alur kerja SQL.
- Untuk mempelajari lebih lanjut cara menggunakan JavaScript di Dataform, lihat Pengantar JavaScript di Dataform.
- Untuk mempelajari lebih lanjut siklus proses kode di Dataform, lihat Pengantar siklus proses kode di Dataform.