Crea connessioni cross-cloud
Le connessioni cross-cloud sono connessioni BigQuery che importano i dati da Amazon Web Services (AWS), Microsoft Azure e Salesforce Data 360 in BigQuery per l'esecuzione di query. Queste connessioni sono un'alternativa alle connessioni BigQuery standard che utilizzano BigQuery Omni, in cui BigQuery implementa worker di calcolo leggeri in regioni remote per rendere disponibili i dati in altri cloud per le query senza spostamento di dati.
I workload possono trarre vantaggio dalle connessioni cross-cloud rispetto a quelle standard per i seguenti motivi:
- Coerenza delle funzionalità. Se porti i tuoi dati da altri cloud in BigQuery, ottieni l'accesso diretto alle funzionalità di BigQuery AI, a Gemini Enterprise Agent Platform, alle viste materializzate, alle funzioni definite dall'utente e ad altre funzionalità non disponibili tramite le connessioni standard.
- Efficienza in termini di costi. I carichi di lavoro che utilizzano connessioni cross-cloud consumano prenotazioni e impegni di slot standard, eliminando la necessità di gestire capacità di calcolo separate.
- Memorizzazione nella cache intelligente. Durante il trasferimento dei dati tra i cloud, BigQuery memorizza automaticamente nella cache i frammenti in locale, evitando tariffe di uscita cross-cloud significative nelle query successive. Per ulteriori informazioni, vedi Memorizzazione nella cache intelligente.
Se il tuo carico di lavoro coinvolge cataloghi Apache Iceberg o hai bisogno del supporto per le query su motori diversi da BigQuery, valuta la possibilità di utilizzare la funzionalità di accesso ai dati cross-cloud di Lakehouse senza confini.
Prima di iniziare
Concedi ruoli Identity and Access Management e di terze parti che forniscano agli utenti le autorizzazioni necessarie per eseguire ogni attività descritta in questo documento.
Ruoli BigQuery richiesti
Per ottenere le autorizzazioni
necessarie per creare una connessione cross-cloud,
chiedi all'amministratore di concederti il ruolo IAM
BigQuery Admin (roles/bigquery.admin) nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Ruoli di terze parti obbligatori
Per ottenere le autorizzazioni necessarie per creare una connessione cross-cloud, assicurati di disporre dei seguenti ruoli di terze parti:
- Per AWS:un ruolo che ti consente di creare policy e ruoli IAM nel tuo account AWS.
- Per Azure:un ruolo che ti consente di gestire le registrazioni di app in Microsoft Entra ID (Azure AD) e assegnare ruoli, ad esempio Lettore di dati BLOB di archiviazione, nell'account Azure di destinazione.
Crea connessioni cross-cloud AWS
Per creare una connessione cross-cloud AWS:
- Crea un criterio AWS IAM per BigQuery come faresti per le connessioni BigQuery standard.
- Crea un ruolo AWS IAM per BigQuery come faresti per le connessioni BigQuery standard.
Per creare una risorsa di connessione, utilizza il comando
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
Sostituisci quanto segue:
LOCATION: una località BigQuery standard, non una località BigQuery Omni. Per indicazioni sulla selezione di una regione, vedi Consigli sulle regioni.PROJECT_ID: l'ID del tuo Google Cloud progetto.AWS_ACCOUNT_ID: l'ID dell'utente AWS IAM del passaggio precedente.ROLE_NAME: il nome della policy del ruolo AWS che hai scelto.CONNECTION_ID: un ID da assegnare a questa risorsa di connessione.
Per annotare le informazioni del account di servizio, utilizza il comando
bq show:bq show --connection \ --location=LOCATION \ PROJECT_ID.LOCATION.CONNECTION_ID
Aggiungi un criterio di attendibilità al ruolo AWS utilizzando le informazioni del account di servizio, come faresti per le connessioni BigQuery standard.
Con la connessione cross-cloud AWS stabilita, ora puoi creare tabelle e set di dati per eseguire query sui dati remoti.
Esempi AWS
Il seguente esempio crea una tabella esterna per eseguire query sui file Parquet direttamente da un bucket Amazon Simple Storage Service (Amazon S3) con una connessione cross-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/*']);
L'esempio seguente federà un intero database in BigQuery utilizzando AWS Glue con una connessione cross-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');
Per saperne di più sulla federazione di AWS Glue, consulta Creare e gestire set di dati federati di AWS Glue.
Crea connessioni cross-cloud Azure
Per creare una connessione cross-cloud Azure:
- Crea un'applicazione nel tenant di Azure come faresti per le connessioni BigQuery standard e prendi nota dell'ID applicazione (client) e dell'ID directory (tenant).
- Assegna un ruolo all'applicazione Azure come faresti per le connessioni BigQuery standard.
Per creare una risorsa di connessione, utilizza il comando
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
Sostituisci quanto segue:
TENANT_ID: l'ID tenant della directory Azure che contiene l'account Azure.LOCATION: una località BigQuery standard, non una località BigQuery Omni. Per indicazioni sulla selezione di una regione, vedi Consigli sulle regioni.APP_ID: l'ID applicazione (client) Azure.PROJECT_ID: l'ID del tuo Google Cloud progetto.CONNECTION_ID: un ID da assegnare a questa risorsa di connessione.
Per annotare le informazioni del account di servizio, utilizza il comando
bq show:bq show --connection \ --location=LOCATION \ PROJECT_ID.LOCATION.CONNECTION_ID
Aggiungi una credenziale federata utilizzando le informazioni dell'account di servizio, come faresti per le connessioni BigQuery standard.
Con la connessione cross-cloud Azure stabilita, ora puoi creare tabelle e set di dati per eseguire query sui dati remoti.
Esempi di Azure
Il seguente esempio crea una tabella esterna per eseguire query sui file Parquet direttamente da un container Azure Blob Storage con una connessione cross-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/*']);
L'esempio seguente crea una tabella esterna per eseguire query sulle esportazioni CSV non elaborate da un container Blob Storage con una connessione cross-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']);
Crea connessioni cross-cloud Data 360
Per creare una connessione cross-cloud Data 360, segui i passaggi per collegare un set di dati Data 360 a BigQuery, ma anziché creare il set di dati collegato in una posizione BigQuery Omni, crealo in una posizione BigQuery standard. Per indicazioni sulla selezione di una regione, vedi Consigli sulle regioni.
Dopo aver aggiornato le query in modo che utilizzino i nuovi set di dati, puoi eliminare tutti i set di dati collegati legacy e le viste materializzate di BigQuery Omni.
Consigli sulle regioni
Quando selezioni una regione BigQuery standard per la connessione cross-cloud, scegli la regione fisicamente più vicina ai tuoi dati per un'efficienza ottimale in termini di costi e prestazioni.
La tabella seguente elenca le regioni AWS e le migliori regioni BigQuery corrispondenti:
| Regione AWS | Regione BigQuery più vicina | Altre regioni BigQuery vicine |
|---|---|---|
us-east-1 |
us-east4 |
us-east1us-east5us-central1
|
us-east-2 |
us-east5 |
us-east4us-east1us-central1
|
us-west-1 |
us-west2 |
us-west4us-west1us-west3
|
us-west-2 |
us-west1 |
us-west3us-west4us-west2
|
ca-central-1 |
northamerica-northeast1 |
northamerica-northeast2us-east4us-east5
|
sa-east-1 |
southamerica-east1 |
southamerica-west1us-east1us-south1
|
eu-west-1 |
europe-west1 |
europe-west2europe-west9europe-west4
|
eu-west-2 |
europe-west2 |
europe-west1europe-west9europe-west4
|
eu-west-3 |
europe-west9 |
europe-west1europe-west2europe-west3
|
eu-central-1 |
europe-west3 |
europe-west4europe-west1europe-west6
|
eu-central-2 |
europe-west6 |
europe-west8europe-west12europe-west3
|
eu-north-1 |
europe-north1 |
europe-west4europe-central2europe-west1
|
eu-south-1 |
europe-west8 |
europe-west12europe-west6europe-west3
|
eu-south-2 |
europe-southwest1 |
europe-west9europe-west1europe-west8
|
me-central-1 |
me-central1 |
me-central2me-west1asia-south1
|
me-south-1 |
me-central2 |
me-central1me-west1asia-south1
|
af-south-1 |
europe-southwest1 |
me-central2me-west1europe-west1
|
ap-east-1 |
asia-east2 |
asia-east1asia-southeast1asia-northeast1
|
ap-northeast-1 |
asia-northeast1 |
asia-northeast2asia-northeast3asia-east1
|
ap-northeast-2 |
asia-northeast3 |
asia-northeast2asia-northeast1asia-east1
|
ap-northeast-3 |
asia-northeast2 |
asia-northeast1asia-northeast3asia-east1
|
ap-south-1 |
asia-south1 |
asia-south2me-central1asia-southeast1
|
ap-south-2 |
asia-south2 |
asia-south1asia-southeast1me-central1
|
ap-southeast-1 |
asia-southeast1 |
asia-southeast2asia-east1asia-south1
|
ap-southeast-2 |
australia-southeast1 |
australia-southeast2asia-southeast2asia-southeast1
|
ap-southeast-3 |
asia-southeast2 |
asia-southeast1australia-southeast1asia-east1
|
La tabella seguente elenca le regioni Azure e le migliori regioni BigQuery corrispondenti:
| Regione Azure | Regione BigQuery più vicina | Altre regioni BigQuery vicine |
|---|---|---|
| Stati Uniti orientali | us-east4 |
us-east1us-east5us-central1
|
| Stati Uniti orientali 2 | us-east4 |
us-east1us-east5us-south1
|
| Stati Uniti occidentali | us-west1 |
us-west2us-west3us-west4
|
| Stati Uniti occidentali 2 | us-west1 |
us-west4us-west3us-west2
|
| Stati Uniti occidentali 3 | us-west4 |
us-west2us-west3us-west1
|
| Stati Uniti centrali | us-central1 |
us-east5us-east4us-east1
|
| Stati Uniti centro-settentrionali | us-east5 |
us-central1us-east4us-east1
|
| Stati Uniti centro-meridionali | us-south1 |
us-east5us-central1us-east1
|
| Stati Uniti centro-occidentali | us-west3 |
us-central1us-west4us-west2
|
| Canada centrale | northamerica-northeast2 |
northamerica-northeast1us-east5us-east4
|
| Canada orientale | northamerica-northeast1 |
northamerica-northeast2us-east4us-east5
|
| Europa occidentale | europe-west4 |
europe-west1europe-west3europe-west9
|
| Europa settentrionale | europe-west1 |
europe-west2europe-west9europe-west4
|
| Francia centrale | europe-west9 |
europe-west1europe-west2europe-west3
|
| Francia meridionale | europe-west9 |
europe-southwest1europe-west8europe-west1
|
| Germania centro-occidentale | europe-west3 |
europe-west4europe-west1europe-west6
|
| Germania del Nord | europe-west3 |
europe-west4europe-central2europe-west2
|
| Svizzera del Nord | europe-west6 |
europe-west8europe-west12europe-west3
|
| Svizzera occidentale | europe-west6 |
europe-west9europe-west8europe-west3
|
| Regno Unito meridionale | europe-west2 |
europe-west1europe-west9europe-west4
|
| Regno Unito occidentale | europe-west2 |
europe-west1europe-west9europe-west4
|
| Norvegia Est | europe-north1 |
europe-west4europe-central2europe-west1
|
| Norvegia Ovest | europe-north1 |
europe-west4europe-central2europe-west1
|
| Svezia centrale | europe-north1 |
europe-west4europe-central2europe-west1
|
| Asia orientale | asia-east2 |
asia-east1asia-southeast1asia-northeast1
|
| Sudest asiatico | asia-southeast1 |
asia-southeast2asia-east1asia-south1
|
| Giappone orientale | asia-northeast1 |
asia-northeast2asia-northeast3asia-east1
|
| Japan West | asia-northeast2 |
asia-northeast1asia-northeast3asia-east1
|
| Corea centrale | asia-northeast3 |
asia-northeast2asia-northeast1asia-east1
|
| Australia orientale | australia-southeast1 |
australia-southeast2asia-southeast2asia-southeast1
|
| Australia sudorientale | australia-southeast2 |
australia-southeast1asia-southeast1asia-east1
|
| Australia centrale | australia-southeast1 |
australia-southeast2asia-southeast2asia-southeast1
|
| India occidentale | asia-south1 |
asia-south2me-central1asia-southeast1
|
| India centrale | asia-south1 |
asia-south2me-central1asia-southeast1
|
| India del Sud | asia-south1 |
asia-south2asia-southeast1me-central1
|
Passaggi successivi
- Scopri di più sull'analisi di BigQuery.