Membuat koneksi lintas cloud

Koneksi lintas cloud adalah koneksi BigQuery yang membawa data dari Amazon Web Services (AWS), Microsoft Azure, dan Salesforce Data 360 ke BigQuery untuk dikueri. Koneksi ini merupakan alternatif untuk koneksi BigQuery standar yang menggunakan BigQuery Omni, dengan BigQuery men-deploy pekerja komputasi ringan ke region jarak jauh untuk membuat data di cloud lain tersedia untuk dikueri tanpa pemindahan data.

Workload dapat memperoleh manfaat dari koneksi lintas cloud dibandingkan dengan koneksi standar karena alasan berikut:

  • Konsistensi fitur. Dengan membawa data Anda dari cloud lain ke BigQuery, Anda mendapatkan akses langsung ke kemampuan AI BigQuery, Gemini Enterprise Agent Platform, tampilan yang diwujudkan, fungsi yang ditentukan pengguna, dan fitur lain yang tidak tersedia melalui koneksi standar.
  • Efisiensi biaya. Workload yang menggunakan koneksi lintas cloud menggunakan reservasi dan komitmen slot standar, sehingga Anda tidak perlu mengelola kapasitas komputasi terpisah.
  • Caching cerdas. Saat data ditransfer di seluruh cloud, BigQuery akan otomatis menyimpan fragmen secara lokal, sehingga menghindari biaya keluar lintas cloud yang signifikan pada kueri berikutnya. Untuk informasi selengkapnya, lihat Caching cerdas.

Jika beban kerja Anda melibatkan katalog Apache Iceberg atau Anda memerlukan dukungan kueri di seluruh mesin selain BigQuery, pertimbangkan untuk menggunakan kemampuan akses data lintas cloud dari Lakehouse tanpa batas.

Sebelum memulai

Berikan peran Identity and Access Management dan pihak ketiga yang memberi pengguna izin yang diperlukan untuk melakukan setiap tugas dalam dokumen ini.

Peran BigQuery yang diperlukan

Untuk mendapatkan izin yang diperlukan guna membuat koneksi lintas-cloud, minta administrator untuk memberi Anda peran IAM BigQuery Admin (roles/bigquery.admin) pada project. 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.

Peran pihak ketiga yang diperlukan

Untuk mendapatkan izin yang Anda perlukan guna membuat koneksi lintas cloud, pastikan Anda memiliki peran pihak ketiga berikut:

  • Untuk AWS: peran yang memungkinkan Anda membuat kebijakan dan peran IAM di akun AWS Anda.
  • Untuk Azure: peran yang memungkinkan Anda mengelola Pendaftaran Aplikasi di Microsoft Entra ID (Azure AD) dan menetapkan peran, seperti Storage Blob Data Reader, di akun Azure target.

Membuat koneksi lintas cloud AWS

Untuk membuat koneksi lintas cloud AWS, lakukan hal berikut:

  1. Buat kebijakan AWS IAM untuk BigQuery seperti yang Anda lakukan untuk koneksi BigQuery standar.
  2. Buat peran AWS IAM untuk BigQuery seperti yang Anda lakukan untuk koneksi BigQuery standar.
  3. Untuk membuat resource koneksi, gunakan perintah bq mk --connection:

    bq mk --connection \
        --connection_type='AWS' \
        --location=LOCATION \
        --project_id=PROJECT_ID \
        --properties='{"accessRole":{"iamRoleId":"arn:aws:iam::AWS_ACCOUNT_ID:role/ROLE_NAME"}}' \
        CONNECTION_ID

    Ganti kode berikut:

    • LOCATION: lokasi BigQuery standar, bukan lokasi BigQuery Omni. Untuk mendapatkan panduan tentang cara memilih region, lihat Rekomendasi region.
    • PROJECT_ID: ID Google Cloud project Anda.
    • AWS_ACCOUNT_ID: ID pengguna AWS IAM dari langkah sebelumnya.
    • ROLE_NAME: nama kebijakan peran AWS yang Anda pilih.
    • CONNECTION_ID: ID yang akan diberikan ke resource koneksi ini.
  4. Untuk mencatat informasi akun layanan, gunakan perintah bq show:

    bq show --connection \
        --location=LOCATION \
        PROJECT_ID.LOCATION.CONNECTION_ID
  5. Tambahkan kebijakan kepercayaan ke peran AWS menggunakan informasi akun layanan, seperti yang Anda lakukan untuk koneksi BigQuery standar.

Dengan koneksi lintas cloud AWS yang sudah dibuat, Anda kini dapat membuat tabel dan set data untuk membuat kueri data jarak jauh Anda.

Contoh AWS

Contoh berikut membuat tabel eksternal untuk membuat kueri file Parquet secara langsung dari bucket Amazon Simple Storage Service (Amazon S3) dengan koneksi lintas cloud:

CREATE SCHEMA `my-project.aws_raw_data`
  OPTIONS (
    location = 'us-east4');

CREATE EXTERNAL TABLE `my-project.aws_raw_data.sales_parquet`
WITH CONNECTION `us-east4.my-aws-connection`
  OPTIONS (
    format = 'PARQUET',
    uris = ['s3://my-data-bucket/sales/year=2025/*']);

Contoh berikut menggabungkan seluruh database ke BigQuery menggunakan AWS Glue dengan koneksi lintas cloud:

CREATE EXTERNAL SCHEMA `my-project.aws_glue_data`
WITH CONNECTION `us-east4.my-aws-connection`
  OPTIONS (
    location = 'us-east4',
    external_source = 'aws-glue://arn:aws:glue:us-east-4:123456789:database/test_database');

Untuk mengetahui informasi selengkapnya tentang gabungan AWS Glue, lihat Membuat dan mengelola set data gabungan AWS Glue.

Membuat koneksi lintas cloud Azure

Untuk membuat koneksi lintas cloud Azure, lakukan hal berikut:

  1. Buat aplikasi di tenant Azure seperti yang Anda lakukan untuk koneksi BigQuery standar, dan catat ID Aplikasi (klien) dan Direktori (tenant).
  2. Tetapkan peran ke aplikasi Azure seperti yang Anda lakukan untuk koneksi BigQuery standar.
  3. Untuk membuat resource koneksi, gunakan perintah bq mk --connection:

    bq mk --connection \
        --connection_type='Azure' \
        --tenant_id=TENANT_ID \
        --location=LOCATION \
        --federated_azure=true \
        --federated_app_client_id=APP_ID \
        --project_id=PROJECT_ID \
        CONNECTION_ID

    Ganti kode berikut:

    • TENANT_ID: ID tenant direktori Azure yang berisi akun Azure.
    • LOCATION: lokasi BigQuery standar, bukan lokasi BigQuery Omni. Untuk mendapatkan panduan tentang cara memilih region, lihat Rekomendasi region.
    • APP_ID: ID Aplikasi (klien) Azure.
    • PROJECT_ID: ID Google Cloud project Anda.
    • CONNECTION_ID: ID yang akan diberikan ke resource koneksi ini.
  4. Untuk mencatat informasi akun layanan, gunakan perintah bq show:

    bq show --connection \
        --location=LOCATION \
        PROJECT_ID.LOCATION.CONNECTION_ID
  5. Tambahkan kredensial gabungan menggunakan informasi akun layanan, seperti yang Anda lakukan untuk koneksi BigQuery standar.

Dengan koneksi lintas cloud Azure yang sudah dibuat, Anda kini dapat membuat tabel dan set data untuk membuat kueri data jarak jauh.

Contoh Azure

Contoh berikut membuat tabel eksternal untuk membuat kueri file Parquet secara langsung dari container Azure Blob Storage dengan koneksi lintas cloud:

CREATE SCHEMA `my-project.azure_raw_data`
  OPTIONS (
    location = 'us-east4');

CREATE EXTERNAL TABLE `my-project.azure_raw_data.sales_parquet`
WITH CONNECTION `us-east4.my-azure-connection`
  OPTIONS (
    format = 'PARQUET',
    uris = ['azure://mystorageaccount.blob.core.windows.net/mycontainer/sales/year=2025/*']);

Contoh berikut membuat tabel eksternal untuk membuat kueri ekspor CSV mentah dari container Blob Storage dengan koneksi lintas cloud:

CREATE EXTERNAL TABLE `my-project.azure_raw_data.daily_logs_csv`
WITH CONNECTION `us-east4.my-azure-connection`
  OPTIONS (
    format = 'CSV',
    skip_leading_rows = 1,
    uris = ['azure://mystorageaccount.blob.core.windows.net/mycontainer/logs/*.csv']);

Membuat koneksi lintas cloud Data 360

Untuk membuat koneksi lintas cloud Data 360, ikuti langkah-langkah untuk menautkan set data Data 360 ke BigQuery, kecuali alih-alih membuat set data tertaut di lokasi BigQuery Omni, buat di lokasi BigQuery standar. Untuk mengetahui panduan tentang cara memilih region, lihat Rekomendasi region.

Setelah memperbarui kueri untuk menggunakan set data baru, Anda dapat menghapus set data tertaut lama dan tampilan terwujud BigQuery Omni.

Rekomendasi wilayah

Saat memilih region BigQuery standar untuk koneksi lintas cloud, pilih region yang secara fisik paling dekat dengan data Anda untuk efisiensi biaya dan performa yang optimal.

Tabel berikut mencantumkan region AWS dan region BigQuery yang paling sesuai:

Region AWS Region BigQuery terdekat Region BigQuery terdekat lainnya
us-east-1 us-east4 us-east1
us-east5
us-central1
us-east-2 us-east5 us-east4
us-east1
us-central1
us-west-1 us-west2 us-west4
us-west1
us-west3
us-west-2 us-west1 us-west3
us-west4
us-west2
ca-central-1 northamerica-northeast1 northamerica-northeast2
us-east4
us-east5
sa-east-1 southamerica-east1 southamerica-west1
us-east1
us-south1
eu-west-1 europe-west1 europe-west2
europe-west9
europe-west4
eu-west-2 europe-west2 europe-west1
europe-west9
europe-west4
eu-west-3 europe-west9 europe-west1
europe-west2
europe-west3
eu-central-1 europe-west3 europe-west4
europe-west1
europe-west6
eu-central-2 europe-west6 europe-west8
europe-west12
europe-west3
eu-north-1 europe-north1 europe-west4
europe-central2
europe-west1
eu-south-1 europe-west8 europe-west12
europe-west6
europe-west3
eu-south-2 europe-southwest1 europe-west9
europe-west1
europe-west8
me-central-1 me-central1 me-central2
me-west1
asia-south1
me-south-1 me-central2 me-central1
me-west1
asia-south1
af-south-1 europe-southwest1 me-central2
me-west1
europe-west1
ap-east-1 asia-east2 asia-east1
asia-southeast1
asia-northeast1
ap-northeast-1 asia-northeast1 asia-northeast2
asia-northeast3
asia-east1
ap-northeast-2 asia-northeast3 asia-northeast2
asia-northeast1
asia-east1
ap-northeast-3 asia-northeast2 asia-northeast1
asia-northeast3
asia-east1
ap-south-1 asia-south1 asia-south2
me-central1
asia-southeast1
ap-south-2 asia-south2 asia-south1
asia-southeast1
me-central1
ap-southeast-1 asia-southeast1 asia-southeast2
asia-east1
asia-south1
ap-southeast-2 australia-southeast1 australia-southeast2
asia-southeast2
asia-southeast1
ap-southeast-3 asia-southeast2 asia-southeast1
australia-southeast1
asia-east1

Tabel berikut mencantumkan region Azure dan region BigQuery yang paling sesuai:

Region Azure Region BigQuery terdekat Region BigQuery terdekat lainnya
AS Timur us-east4 us-east1
us-east5
us-central1
US Timur 2 us-east4 us-east1
us-east5
us-south1
AS Barat us-west1 us-west2
us-west3
us-west4
US Barat 2 us-west1 us-west4
us-west3
us-west2
US Barat 3 us-west4 us-west2
us-west3
us-west1
Amerika Serikat Bagian Tengah us-central1 us-east5
us-east4
us-east1
AS Tengah Utara us-east5 us-central1
us-east4
us-east1
AS Tengah Selatan us-south1 us-east5
us-central1
us-east1
AS Tengah Barat us-west3 us-central1
us-west4
us-west2
Kanada Tengah northamerica-northeast2 northamerica-northeast1
us-east5
us-east4
Kanada Timur northamerica-northeast1 northamerica-northeast2
us-east4
us-east5
Eropa Barat europe-west4 europe-west1
europe-west3
europe-west9
Eropa Utara europe-west1 europe-west2
europe-west9
europe-west4
Prancis Bagian Tengah europe-west9 europe-west1
europe-west2
europe-west3
Prancis Selatan europe-west9 europe-southwest1
europe-west8
europe-west1
Jerman Tengah Bagian Barat europe-west3 europe-west4
europe-west1
europe-west6
Jerman Utara europe-west3 europe-west4
europe-central2
europe-west2
Swiss Utara europe-west6 europe-west8
europe-west12
europe-west3
Swiss Barat europe-west6 europe-west9
europe-west8
europe-west3
Inggris Selatan europe-west2 europe-west1
europe-west9
europe-west4
Inggris Barat europe-west2 europe-west1
europe-west9
europe-west4
Norwegia Timur europe-north1 europe-west4
europe-central2
europe-west1
Norwegia Barat europe-north1 europe-west4
europe-central2
europe-west1
Swedia Tengah europe-north1 europe-west4
europe-central2
europe-west1
Asia Timur asia-east2 asia-east1
asia-southeast1
asia-northeast1
Asia Tenggara asia-southeast1 asia-southeast2
asia-east1
asia-south1
Jepang Timur asia-northeast1 asia-northeast2
asia-northeast3
asia-east1
Jepang Barat asia-northeast2 asia-northeast1
asia-northeast3
asia-east1
Korea Tengah asia-northeast3 asia-northeast2
asia-northeast1
asia-east1
Australia Timur australia-southeast1 australia-southeast2
asia-southeast2
asia-southeast1
Australia Tenggara australia-southeast2 australia-southeast1
asia-southeast1
asia-east1
Australia Bagian Tengah australia-southeast1 australia-southeast2
asia-southeast2
asia-southeast1
India Barat asia-south1 asia-south2
me-central1
asia-southeast1
India Tengah asia-south1 asia-south2
me-central1
asia-southeast1
India Selatan asia-south1 asia-south2
asia-southeast1
me-central1

Langkah berikutnya