Mengaktifkan BigQuery Data Transfer Service

Untuk menggunakan BigQuery Data Transfer Service, Anda harus menyelesaikan langkah-langkah berikut sebagai Pemilik project:

  • Buat project dan aktifkan BigQuery API.
  • Aktifkan BigQuery Data Transfer Service.

Untuk informasi selengkapnya tentang peran Identity and Access Management (IAM), lihat Memahami peran dalam dokumentasi IAM.

Membuat project dan mengaktifkan BigQuery API

Sebelum menggunakan BigQuery Data Transfer Service, Anda harus membuat project dan, pada sebagian besar kasus, mengaktifkan penagihan pada project tersebut. Anda dapat menggunakan project yang sudah ada dengan BigQuery Data Transfer Service, atau membuat yang baru. Jika menggunakan project yang sudah ada, Anda mungkin juga perlu mengaktifkan BigQuery API.

Untuk membuat project dan mengaktifkan BigQuery API:

  1. Di konsol Google Cloud, buka halaman Pemilih project.

    Buka pemilih project

  2. Pilih atau buat project Google Cloud.

  3. Aktifkan penagihan pada project Anda untuk semua transfer. Anda akan ditagih $0 untuk transfer gratis.

    Mengaktifkan penagihan hanya diperlukan satu kali per project, meskipun Anda mentransfer data dari beberapa sumber. Penagihan juga harus diaktifkan untuk mengkueri data di BigQuery, setelah data ditransfer.

    Pelajari cara mengonfirmasi bahwa penagihan diaktifkan di project Anda.

  4. BigQuery secara otomatis diaktifkan dalam project baru. Untuk mengaktifkan BigQuery dalam project yang sudah ada, aktifkan BigQuery API.

    Aktifkan BigQuery API

Mengaktifkan BigQuery Data Transfer Service

Sebelum dapat melakukan transfer, Anda harus mengaktifkan BigQuery Data Transfer Service. Untuk mengaktifkan BigQuery Data Transfer Service, Anda harus diberi peran Pemilik untuk project Anda.

Cara mengaktifkan BigQuery Data Transfer Service

  1. Buka halaman BigQuery Data Transfer API di library API.

  2. Dari menu dropdown, pilih project yang sesuai.

  3. Klik tombol ENABLE.

    Mengaktifkan Data Transfer API

Agen Layanan

BigQuery Data Transfer Service menggunakan akun layanan yang dikelola Google yang dikenal sebagai agen layanan, untuk mengakses dan mengelola resource Anda. Agen ini mencakup, tetapi tidak terbatas pada, resource berikut:

  • Mengambil token akses untuk akun layanan yang akan digunakan saat otorisasi transfer data.
  • Memublikasikan notifikasi ke topik Pub/Sub yang disediakan jika diaktifkan.
  • Memulai tugas BigQuery.

Agen layanan dibuatkan secara otomatis untuk Anda saat pertama kali menggunakan API setelah mengaktifkan BigQuery Data Transfer Service. Setelah agen layanan dibuat, Google memberikan peran agen layanan yang telah ditetapkan secara otomatis.

Otorisasi Akun Layanan Lintas Project

Jika Anda mengizinkan transfer data menggunakan akun layanan dari project yang berbeda dengan project tempat BigQuery Data Transfer Service diaktifkan, Anda harus memberikan peran roles/iam.serviceAccountTokenCreator kepada agen layanan menggunakan perintah Google Cloud CLI berikut:

gcloud iam service-accounts add-iam-policy-binding service_account \
--member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com \
--role roles/iam.serviceAccountTokenCreator

Dengan keterangan:

  • service_account adalah akun layanan lintas project yang digunakan untuk otorisasi transfer data.
  • project_number adalah nomor project dari project tempat BigQuery Data Transfer Service diaktifkan.

Untuk mengetahui informasi selengkapnya tentang konfigurasi resource lintas project, lihat Mengonfigurasi resource dalam project berbeda dalam dokumentasi peniruan akun layanan Identity and Access Management.

Pembuatan Agen Layanan Manual

Jika Anda ingin memicu pembuatan agen layanan sebelum berinteraksi dengan API, misalnya, jika Anda perlu memberikan peran tambahan kepada agen layanan, Anda dapat menggunakan salah satu pendekatan berikut:

Saat Anda memicu pembuatan agen layanan secara manual, Google tidak memberikan peran agen layanan yang telah ditetapkan secara otomatis. Anda harus memberikan peran yang telah ditetapkan kepada agen layanan secara manual menggunakan perintah Google Cloud CLI berikut:

gcloud projects add-iam-policy-binding project_number \
--member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com \
--role roles/bigquerydatatransfer.serviceAgent

Dengan keterangan:

  • project_number adalah nomor project dari project tempat BigQuery Data Transfer Service diaktifkan.

Memberikan akses kepada bigquery.admin

Sebaiknya berikan peran IAM bigquery.admin yang telah ditetapkan kepada pengguna yang melakukan transfer BigQuery Data Transfer Service. Peran bigquery.admin mencakup izin IAM yang diperlukan untuk melakukan tugas yang paling umum. Peran bigquery.admin mencakup izin BigQuery Data Transfer Service berikut:

  • Izin BigQuery Data Transfer Service:
    • bigquery.transfers.update
    • bigquery.transfers.get
  • Izin BigQuery:
    • bigquery.datasets.get
    • bigquery.datasets.update
    • bigquery.jobs.create

Dalam beberapa kasus, izin yang diperlukan mungkin berbeda di antara sumber-sumber data yang berbeda. Lihat bagian "Izin yang diperlukan" di setiap panduan transfer sumber data untuk mengetahui informasi IAM tertentu. Misalnya, lihat izin transfer Amazon S3 atau izin transfer Cloud Storage.

Untuk memberikan peran bigquery.admin:

Konsol

  1. Buka halaman IAM di konsol Google Cloud

    Buka halaman IAM

  2. Klik Select a project.

  3. Pilih project, lalu klik Open.

  4. Klik Add untuk menambahkan anggota baru ke project dan menetapkan izin mereka.

  5. Dalam dialog Add members:

    • Untuk Members, masukkan alamat email pengguna atau grup.
    • Di drop-down Select a role, klik BigQuery > BigQuery Admin.
    • Klik Tambahkan.

      Grant admin

gcloud

Anda dapat menggunakan Google Cloud CLI untuk memberikan peran bigquery.admin kepada pengguna atau grup.

Untuk menambahkan binding tunggal ke kebijakan IAM project Anda, ketik perintah berikut. Untuk menambahkan pengguna, berikan flag --member dalam format user:user@example.com. Untuk menambahkan grup, berikan flag --member dalam format group:group@example.com.

gcloud projects add-iam-policy-binding project_id \
--member principal:address \
--role roles/bigquery.admin

Dengan keterangan:

  • project_id adalah project ID Anda.
  • principal adalah group atau user.
  • address adalah alamat email pengguna atau grup.

Contoh:

gcloud projects add-iam-policy-binding myproject \
--member group:group@example.com \
--role roles/bigquery.admin

Perintah tersebut menghasilkan kebijakan yang telah diperbarui:

    bindings:
    - members:
      - group:group@example.com
        role: roles/bigquery.admin
    

Untuk mengetahui informasi lebih lanjut tentang peran IAM dalam BigQuery, lihat Peran dan izin yang telah ditetapkan.

Langkah selanjutnya

Setelah mengaktifkan BigQuery Data Transfer Service, buat transfer untuk sumber data Anda.