Dokumen ini membantu Anda memahami konsep repositori di Dataform dan cara membuat repositori baru.
Tentang repositori Dataform
Setiap repositori Dataform menyimpan kumpulan file SQLX dan JavaScript yang membentuk alur kerja Anda, serta file dan paket konfigurasi Dataform. Anda berinteraksi dengan konten repositori di ruang kerja pengembangan.
Dataform menampilkan repositori Anda di halaman Dataform dalam urutan alfabetis ID repositori. Anda dapat mengurutkan dan memfilternya.
Untuk melihat repositori Anda, di Google Cloud konsol, buka halaman Dataform.
Setiap repositori Dataform harus terhubung ke akun layanan kustom. Anda memilih akun layanan kustom saat Anda membuat repositori. Anda dapat mengedit akun layanan nanti.
Dataform menggunakan Git untuk mencatat perubahan dan mengelola versi file. Setiap repositori Dataform sesuai dengan repositori Git. Setelah membuat repositori Dataform, Anda dapat menghubungkannya ke repositori GitHub, GitLab, atau Bitbucket jarak jauh.
Di repositori Dataform, Dataform menyimpan kode repositori. Di repositori yang terhubung, repositori pihak ketiga menyimpan kode repositori. Dataform berinteraksi dengan repositori pihak ketiga untuk memungkinkan Anda mengedit dan menjalankan kontennya di ruang kerja pengembangan Dataform.
Halaman repositori Dataform terdiri dari komponen berikut:
- Tab Ruang Kerja Pengembangan
- Menampilkan ruang kerja pengembangan yang dibuat di repositori.
- Tab Log Eksekusi Alur Kerja
- Menampilkan log eksekusi alur kerja Dataform.
- Tab Rilis &penjadwalan
- Memungkinkan Anda memeriksa, membuat, mengedit, dan menghapus konfigurasi rilis dan konfigurasi alur kerja.
- Tab Setelan
- Menampilkan nama dan lokasi repositori. Untuk repositori yang terhubung ke repositori Git pihak ketiga, menampilkan sumber repositori pihak ketiga, nama cabang default, dan token rahasia. Menampilkan tombol untuk menghubungkan repositori ke repositori Git pihak ketiga dan untuk mengedit koneksi Git.
- Tombol Buat ruang kerja pengembangan
- Memungkinkan Anda membuat ruang kerja pengembangan.
Setelah membuat dan melakukan inisialisasi ruang kerja pengembangan, Anda dapat mengedit file setelan alur kerja untuk mengonfigurasi setelan Dataform berikut dari repositori Anda:
- Database default (Google Cloud project ID).
- Skema default (ID set data BigQuery).
- Lokasi BigQuery default.
- Skema default (ID set data BigQuery) untuk pernyataan.
- Warehouse, yang harus ditetapkan ke
bigquery. - Variabel buatan pengguna yang tersedia untuk kode project selama kompilasi.
Untuk mengetahui informasi selengkapnya tentang setelan repositori Dataform, lihat IProjectConfig di referensi inti Dataform.
Setelan repositori
Saat membuat repositori Dataform, Anda harus menetapkan setelan repositori berikut:
- ID Repositori
- ID unik repositori. ID hanya dapat menyertakan angka, huruf, tanda hubung, dan garis bawah.
- Wilayah
Wilayah Dataform untuk menyimpan repositori dan kontennya.
Wilayah penyimpanan ini dapat berbeda dengan wilayah pemrosesan tempat Dataform memproses kode Anda dan menyimpan output eksekusi. Secara default, wilayah pemrosesan ditetapkan ke wilayah set data BigQuery default Anda. Anda dapat mengedit wilayah pemrosesan di file setelan alur kerja setelah membuat repositori. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi setelan alur kerja Dataform.
- Akun layanan
Akun layanan kustom yang terkait dengan repositori. Anda dapat memilih akun layanan yang terkait dengan Google Cloud project atau memasukkan akun layanan lain secara manual.
Anda harus menggunakan akun layanan kustom untuk menjalankan alur kerja di repositori. Semua operasi repositori lainnya dilakukan oleh agen layanan Dataform default.
- Mode act-as ketat
Mengaktifkan pemeriksaan keamanan tambahan yang memerlukan izin
iam.serviceAccounts.actAspada akun layanan. Mode act-as ketat diterapkan untuk semua repositori.- Enkripsi
Metode enkripsi untuk repositori. Anda dapat menggunakan enkripsi default, kunci enkripsi Cloud KMS yang dikelola pelanggan yang unik , atau kunci CMEK Dataform default. Untuk mengetahui informasi selengkapnya tentang penggunaan kunci enkripsi yang dikelola pelanggan (CMEK) di Dataform, lihat Menggunakan kunci enkripsi yang dikelola pelanggan.
Setelah membuat repositori, Anda dapat menghubungkannya ke GitHub atau GitLab.
Sebelum memulai
- Login ke akun Anda. Google Cloud Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the BigQuery and Dataform APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the BigQuery and Dataform APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.- Untuk menggunakan enkripsi CMEK untuk repositori, aktifkan enkripsi CMEK repositori Dataform.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk membuat dan menghapus repositori, minta administrator untuk memberi Anda peran IAM berikut di repositori:
-
Admin Dataform (
roles/dataform.admin) - project -
Pengguna Akun Layanan (
roles/iam.serviceAccountUser) - akun layanan kustom
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.
Memberikan peran yang diperlukan
Untuk menjalankan alur kerja di repositori Dataform dan di BigQuery, Anda dapat menggunakan akun layanan kustom atau Akun Google Anda.
Akun layanan kustom Anda harus memiliki peran yang diperlukan berikut:
- BigQuery Data Editor
(
roles/bigquery.dataEditor) di project atau set data BigQuery tertentu yang memerlukan akses baca dan tulis Dataform. Hal ini biasanya mencakup project yang menghosting repositori Dataform Anda. - BigQuery Data Viewer
(
roles/bigquery.dataViewer) di project atau set data BigQuery tertentu yang memerlukan akses hanya baca Dataform. - BigQuery Job User
(
roles/bigquery.jobUser) di project yang menghosting repositori Dataform Anda.
Agar Dataform dapat menggunakan akun layanan kustom Anda, agen layanan Dataform default harus memiliki peran berikut di resource akun layanan kustom:
- Service Account Token Creator
(
roles/iam.serviceAccountTokenCreator) - Service Account User
(
roles/iam.serviceAccountUser)
Untuk memberikan peran ini, ikuti langkah-langkah berikut:
Di Google Cloud konsol, buka halaman IAM.
Klik Grant access.
Di kolom New principals, masukkan ID akun layanan kustom Anda.
Di menu Select a role, pilih peran berikut satu per satu, menggunakan Add another role untuk setiap peran tambahan:
- BigQuery Data Editor
- BigQuery Data Viewer
- BigQuery Job User
Klik Save.
Di Google Cloud konsol, buka halaman Service accounts.
Pilih akun layanan kustom Anda.
Buka Principals with access, lalu klik Grant access.
Di kolom New principals, masukkan ID agen layanan Dataform default Anda.
ID agen layanan Dataform default Anda memiliki format berikut:
service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.comGanti
PROJECT_NUMBERdengan ID numerik Google Cloud project Anda. Anda dapat menemukan Google Cloud project ID di Google Cloud dasbor konsol. Untuk mengetahui informasi selengkapnya, lihat Mengidentifikasi project.Di daftar Select a role, tambahkan peran berikut:
- Service Account User
- Service Account Token Creator
Klik Save.
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Memberikan akses yang diperlukan ke Dataform.
Membuat repositori
Untuk membuat repositori Dataform, ikuti langkah-langkah berikut:
Di Google Cloud konsol, buka halaman Dataform.
Klik Create repository.
Di halaman Create repository, di kolom Repository ID , masukkan ID unik.
ID hanya dapat menyertakan angka, huruf, tanda hubung, dan garis bawah.
Di daftar drop-down Region, pilih wilayah Dataform untuk menyimpan repositori dan kontennya. Pilih wilayah Dataform yang paling dekat dengan lokasi Anda.
Untuk mengetahui daftar wilayah Dataform yang tersedia, lihat Lokasi. Wilayah repositori tidak harus cocok dengan lokasi set data BigQuery Anda.
Di file
workflow_settings.yaml, Anda dapat menetapkan wilayah pemrosesan tempat Dataform memproses kode Anda dan menyimpan output eksekusi. Wilayah pemrosesan harus cocok dengan lokasi set data BigQuery Anda, tetapi tidak harus cocok dengan wilayah repositori. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi setelan alur kerja Dataform.Di menu Service account, pilih akun layanan kustom untuk repositori.
Di menu, Anda dapat memilih akun layanan kustom yang terkait dengan Google Cloud project Anda yang dapat Anda akses. Akun layanan kustom hanya digunakan untuk eksekusi alur kerja. Semua operasi repositori lainnya dilakukan oleh agen layanan Dataform default.
- Opsional: Untuk memilih akun layanan yang tidak ditampilkan di menu—misalnya, jika Anda tidak memiliki izin
iam.serviceAccounts.listyang diperlukan untuk melihat daftar peran—klik Enter manually , lalu masukkan ID akun layanan.
- Opsional: Untuk memilih akun layanan yang tidak ditampilkan di menu—misalnya, jika Anda tidak memiliki izin
Di bagian actAs permission checks, terapkan pemeriksaan izin pada tindakan pengguna di repositori. Untuk mengetahui detail pemeriksaan ini, lihat Menggunakan mode act-as ketat.
Konfigurasi mekanisme enkripsi yang Anda pilih untuk repositori:
Kunci CMEK default
Dataform menampilkan kotak centang Use the default KMS key dan memilihnya secara default.
- Untuk mengenkripsi repositori dengan kunci CMEK Dataform default, biarkan kotak centang Use the default KMS key dicentang.
Kunci CMEK unik
Untuk mengenkripsi repositori dengan kunci CMEK unik, lakukan hal berikut:
- Jika kotak centang Use the default KMS key dicentang secara default, hapus centang kotak centang tersebut.
- Di bagian Encryption, pilih opsi Customer-managed encryption keys (CMEK).
- Di drop-down Select a customer-managed key , pilih kunci CMEK unik.
Enkripsi dalam penyimpanan
- Untuk menggunakan enkripsi default, di bagian Encryption, pilih opsi Google-managed encryption key.
Klik Create, lalu klik Go to repositories.
Mengedit akun layanan
Anda harus menggunakan akun layanan kustom untuk menjalankan alur kerja di repositori. Semua operasi repositori lainnya dilakukan oleh agen layanan Dataform default.
Untuk mengedit akun layanan untuk repositori Dataform, ikuti langkah-langkah berikut:
Di Google Cloud konsol, buka halaman Dataform.
Pilih repositori, lalu klik Settings.
Di kolom Service account, klik Edit Service account.
Di menu Service account, pilih akun layanan untuk repositori.
Di menu, Anda dapat memilih akun layanan kustom yang terkait dengan Google Cloud project Anda yang dapat Anda akses.
- Opsional: Untuk memilih akun layanan yang tidak ditampilkan di menu, klik Enter manually , lalu masukkan ID akun layanan.
Klik Save.
Menghapus repositori
Untuk menghapus repositori dan semua kontennya, ikuti langkah-langkah berikut:
Di Google Cloud konsol, buka halaman Dataform.
Di samping repositori yang ingin Anda hapus, klik menu More, lalu pilih Delete.
Di jendela Delete repository, masukkan nama repositori untuk mengonfirmasi penghapusan.
Klik Delete.
Langkah berikutnya
- Untuk mempelajari cara menghubungkan repositori Dataform ke repositori Git pihak ketiga, lihat Menghubungkan ke repositori Git pihak ketiga.
- Untuk mempelajari lebih lanjut pengaruh ukuran repositori terhadap pengembangan di Dataform, lihat Ringkasan ukuran repositori.
- Untuk mempelajari lebih lanjut cara membagi repositori di Dataform, lihat Pengantar pembagian repositori.
- Untuk mempelajari cara mengonfigurasi setelan pemrosesan Dataform, lihat Mengonfigurasi setelan alur kerja Dataform.
- Untuk mempelajari cara membuat dan melakukan inisialisasi ruang kerja, lihat Membuat ruang kerja.