Dataform dapat menjalankan operasi SQL kustom yang tidak sesuai dengan model Dataform untuk memublikasikan tabel atau menulis pernyataan. Anda dapat menentukan perintah SQL kustom agar Dataform dijalankan di BigQuery.
Sebelum memulai
Di konsol Google Cloud , buka halaman Dataform.
Pilih atau buat repositori.
Pilih atau buat ruang kerja pengembangan.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan guna menentukan operasi SQL kustom,
minta administrator untuk memberi Anda
peran IAM Editor Dataform (roles/dataform.editor
)
di ruang kerja.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Membuat file untuk definisi operasi kustom
Simpan file SQLX definisi operasi kustom di direktori definitions/
.
Untuk membuat file SQLX baru di direktori definitions/
, ikuti langkah-langkah berikut:
- Buka ruang kerja pengembangan Anda.
- Di panel Files, di samping
definitions/
, klik menuMore.
- Klik Create file.
Di kolom Tambahkan jalur file, masukkan nama file yang diikuti dengan
.sqlx
setelahdefinitions/
. Contohnya,definitions/sample-operation.sqlx
Nama file hanya boleh berisi angka, huruf, tanda hubung, dan garis bawah.
Klik Create file.
Menentukan operasi SQL kustom
Anda dapat menentukan operasi SQL kustom dalam file SQLX type: operations
.
Anda dapat menulis pernyataan SQL BigQuery apa pun dalam file operations
.
Dataform menjalankan operasi SQL kustom Anda di BigQuery tanpa modifikasi.
Anda dapat menentukan beberapa operasi SQL kustom dalam satu file SQLX.
BigQuery menjalankan semua operasi dalam file dalam konteks yang sama, dan
membuat SQL yang dijalankan dengan menggabungkan semua operasi dengan titik koma (;
).
Untuk menentukan beberapa operasi SQL kustom saat menggunakan framework Dataform open sourcedengan gudang data selain BigQuery,
pisahkan operasi dengan ---
.
Untuk menentukan operasi SQL kustom dalam file SQLX khusus, ikuti langkah-langkah berikut:
- Di ruang kerja pengembangan, pilih file SQLX untuk definisi operasi kustom.
Di file tersebut, masukkan cuplikan kode berikut:
config { type: "operations" }
Di luar blok
config
, tulis operasi SQL Anda.Opsional: Klik Format.
Contoh kode berikut menunjukkan beberapa operasi SQL kustom yang ditentukan dalam file
operations
:
config { type: "operations" }
DELETE FROM dataset.table WHERE country = 'GB';
DELETE FROM dataset.table WHERE country = 'FR';
Contoh kode berikut menunjukkan operasi SQL kustom yang secara manual membuat tampilan:
config { type: "operations" }
CREATE OR REPLACE VIEW dataset.table AS (SELECT 1 AS TEST)
Membuat tabel output yang dapat dirujuk
Anda dapat membuat tabel secara manual dalam operasi SQL kustom yang dapat Anda rujuk dalam skrip lain. Untuk membuat tabel yang tersedia bagi skrip lain, Anda harus menyatakan bahwa operasi memiliki output.
Agar nama tabel output cocok dengan nama file operations
,
Anda dapat menggunakan fungsi self
dalam operasi CREATE
.
Untuk membuat tabel dalam operasi kustom dan menyediakannya untuk skrip lain, ikuti langkah-langkah berikut:
- Di ruang kerja pengembangan, pilih file SQLX untuk definisi operasi kustom.
Di file SQLX, masukkan cuplikan kode berikut:
config { type: "operations", hasOutput: true }
Untuk mencocokkan nama tabel output dengan nama file, tulis operasi SQL
CREATE
dengan fungsiself
dalam format berikut:CREATE OR REPLACE TABLE ${self()} AS (CUSTOM_SQL_QUERY)
Ganti CUSTOM_SQL_QUERY dengan pernyataan SQL
SELECT
definisi tabel Anda.Opsional: Klik Format.
Merujuk tabel output operasi SQL kustom
- Untuk mereferensikan tabel output operasi SQL kustom dalam definisi SQLX dari
tabel yang berbeda, masukkan nama file tabel output dalam fungsi
ref
.
Contoh kode berikut menunjukkan operasi SQL kustom dalam file
custom_SQL_operation_table.sqlx
yang membuat tabel yang dapat dirujuk
bernama custom_SQL_operation_table
:
// filename is custom_SQL_operation_table.sqlx
config {
type: "operations",
hasOutput: true
}
CREATE OR REPLACE VIEW ${self()} AS (SELECT 1 AS TEST)
Contoh kode berikut menunjukkan cara mereferensikan
custom\_SQL\_operation\_table table
dalam file SQLX definisi tabel:
config { type: "table" }
SELECT * FROM ${ref("custom_SQL_operation_table")}
Membuat tabel kosong
Anda mungkin ingin membuat tabel kosong agar layanan lain dapat mengisi tabel tersebut dengan data. Anda dapat membuat tabel kosong dalam operasi SQL kustom
dengan fungsi CREATE TABLE
. Agar dapat mereferensikan tabel kosong dalam
definisi tindakan alur kerja lainnya, misalnya, tabel dan tampilan, Anda dapat
menambahkan properti hasOutput:true
ke blok config
operasi tabel kosong.
- Untuk membuat tabel kosong, gunakan fungsi
CREATE TABLE
dalam filetype: "operations"
dengan format berikut:
config {
type: "operations",
hasOutput: true // optional, lets you reference the empty table
}
CREATE TABLE ${self()} (
)
Contoh kode berikut menunjukkan operasi SQL kustom yang membuat tabel kosong dengan kolom bilangan bulat dan string. Tabel kosong yang dibuat tidak dapat dirujuk oleh tindakan alur kerja lainnya:
config {
type: "operations"
}
CREATE TABLE ${self()} (
x INT64,
y STRING
)
Langkah berikutnya
- Untuk mempelajari cara membuat operasi SQL kustom dengan JavaScript, lihat Membuat alur kerja secara eksklusif dengan JavaScript.
- Untuk mempelajari cara memicu run secara manual, lihat Memicu run secara manual.
- Untuk mempelajari cara menggunakan DML BigQuery, lihat Menggunakan bahasa pengolahan data (DML).
- Untuk mempelajari fungsi
self
dan fungsi bawaan Dataform lainnya lebih lanjut, lihat Dataform API.