Crea conexiones multinube

Las conexiones multinube son conexiones de BigQuery que llevan datos de Amazon Web Services (AWS), Microsoft Azure y Salesforce Data 360 a BigQuery para realizar consultas. Estas conexiones son una alternativa a las conexiones estándar de BigQuery que usan BigQuery Omni, en las que BigQuery implementa trabajadores de procesamiento ligeros en regiones remotas para que los datos de otras nubes estén disponibles para consultas sin ningún movimiento de datos.

Las cargas de trabajo pueden beneficiarse de las conexiones multinube en comparación con las conexiones estándar por los siguientes motivos:

  • Coherencia de las funciones. Cuando transfieres tus datos de otras nubes a BigQuery, obtienes acceso directo a las capacidades de IA de BigQuery, Gemini Enterprise Agent Platform, las vistas materializadas, las funciones definidas por el usuario y otras funciones que no están disponibles a través de conexiones estándar.
  • Rentabilidad Las cargas de trabajo que usan conexiones multinube consumen reservas y compromisos de ranuras estándar, lo que elimina la necesidad de administrar capacidades de procesamiento independientes.
  • Almacenamiento en caché inteligente. Mientras los datos se transfieren entre nubes, BigQuery almacena en caché los fragmentos de forma local automáticamente, lo que evita tarifas de salida significativas multinube en las consultas posteriores. Para obtener más información, consulta Almacenamiento en caché inteligente.

Si tu carga de trabajo involucra catálogos de Apache Iceberg o necesitas compatibilidad con consultas en motores que no sean BigQuery, considera usar la capacidad de acceso a datos multinube de Lakehouse sin fronteras.

Antes de comenzar

Otorga roles de Identity and Access Management y de terceros que les brindan a los usuarios los permisos necesarios para realizar cada tarea de este documento.

Roles de BigQuery requeridos

Para obtener los permisos que necesitas para crear una conexión multinube, pídele a tu administrador que te otorgue el rol de IAM de administrador de BigQuery (roles/bigquery.admin) en el proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Roles de terceros obligatorios

Para obtener los permisos que necesitas para crear una conexión multinube, asegúrate de tener los siguientes roles de terceros:

  • Para AWS: Un rol que te permita crear políticas y roles de IAM en tu cuenta de AWS.
  • Para Azure: Es un rol que te permite administrar los registros de apps en Microsoft Entra ID (Azure AD) y asignar roles, como Lector de datos de BLOB de almacenamiento, en la cuenta de Azure de destino.

Crea conexiones multinube de AWS

Para crear una conexión multinube de AWS, haz lo siguiente:

  1. Crea una política de IAM de AWS para BigQuery como lo harías para las conexiones estándar de BigQuery.
  2. Crea un rol de IAM de AWS para BigQuery como lo harías para las conexiones estándar de BigQuery.
  3. Para crear un recurso de conexión, usa el 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

    Reemplaza lo siguiente:

    • LOCATION: Es una ubicación de BigQuery estándar, no una ubicación de BigQuery Omni. Para obtener orientación sobre cómo seleccionar una región, consulta Recomendaciones de regiones.
    • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
    • AWS_ACCOUNT_ID: Es el ID del usuario de IAM de AWS del paso anterior.
    • ROLE_NAME: Es el nombre de la política del rol de AWS que elegiste.
    • CONNECTION_ID: Es un ID que se asignará a este recurso de conexión.

    Para obtener más información sobre las propiedades de conexión de AWS, consulta AwsProperties.

  4. Para anotar la información de la cuenta de servicio, usa el comando bq show:

    bq show --connection \
        --location=LOCATION \
        PROJECT_ID.LOCATION.CONNECTION_ID
  5. Agrega una política de confianza al rol de AWS con la información de la cuenta de servicio, como lo harías para las conexiones estándar de BigQuery.

Con la conexión multinube de AWS establecida, ahora puedes crear tablas y conjuntos de datos para consultar tus datos remotos.

Ejemplos de AWS

En el siguiente ejemplo, se crea una tabla externa para consultar archivos de Parquet directamente desde un bucket de Amazon Simple Storage Service (Amazon S3) con una conexión multinube:

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/*']);

En el siguiente ejemplo, se federa una base de datos completa en BigQuery con AWS Glue con una conexión multinube:

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');

Para obtener más información sobre la federación de AWS Glue, consulta Crea y administra conjuntos de datos federados de AWS Glue.

Crea conexiones multinube de Azure

Para crear una conexión multinube de Azure, haz lo siguiente:

  1. Crea una aplicación en tu instancia de Azure como lo harías para las conexiones estándar de BigQuery y toma nota de los IDs de aplicación (cliente) y directorio (instancia).
  2. Asigna un rol a la aplicación de Azure como lo harías para las conexiones estándar de BigQuery.
  3. Para crear un recurso de conexión, usa el 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

    Reemplaza lo siguiente:

    • TENANT_ID: Es el ID de usuario del directorio de Azure que contiene la cuenta de Azure.
    • LOCATION: Es una ubicación de BigQuery estándar, no una ubicación de BigQuery Omni. Para obtener orientación sobre cómo seleccionar una región, consulta Recomendaciones de regiones.
    • APP_ID: Es el ID de la aplicación de Azure (cliente).
    • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
    • CONNECTION_ID: Es un ID que se asignará a este recurso de conexión.

    Para obtener más información sobre las propiedades de conexión de Azure, consulta AzureProperties.

  4. Para anotar la información de la cuenta de servicio, usa el comando bq show:

    bq show --connection \
        --location=LOCATION \
        PROJECT_ID.LOCATION.CONNECTION_ID
  5. Agrega una credencial federada con la información de la cuenta de servicio, como lo harías para las conexiones estándar de BigQuery.

Con la conexión multinube de Azure establecida, ahora puedes crear tablas y conjuntos de datos para consultar tus datos remotos.

Ejemplos de Azure

En el siguiente ejemplo, se crea una tabla externa para consultar archivos Parquet directamente desde un contenedor de Azure Blob Storage con una conexión multinube:

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/*']);

En el siguiente ejemplo, se crea una tabla externa para consultar exportaciones de CSV sin procesar desde un contenedor de Blob Storage con una conexión multinube:

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 conexiones multinube de Data 360

Para crear una conexión multinube de Data 360, sigue los pasos para vincular un conjunto de datos de Data 360 a BigQuery, excepto que, en lugar de crear el conjunto de datos vinculado en una ubicación de BigQuery Omni, créalo en una ubicación de BigQuery estándar. Para obtener orientación sobre cómo seleccionar una región, consulta Recomendaciones de regiones.

Después de actualizar tus consultas para usar los conjuntos de datos nuevos, puedes borrar cualquier conjunto de datos vinculado heredado y las vistas materializadas de BigQuery Omni.

Recomendaciones de regiones

Cuando selecciones una región estándar de BigQuery para tu conexión multinube, elige la región que esté físicamente más cerca de tus datos para obtener una eficiencia óptima de costos y rendimiento.

En la siguiente tabla, se enumeran las regiones de AWS y las regiones de BigQuery correspondientes:

Región de AWS Región de BigQuery más cercana Otras regiones de BigQuery cercanas
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

En la siguiente tabla, se enumeran las regiones de Azure y las regiones de BigQuery correspondientes:

Región de Azure Región de BigQuery más cercana Otras regiones de BigQuery cercanas
EE.UU. este us-east4 us-east1
us-east5
us-central1
EE.UU. este 2 us-east4 us-east1
us-east5
us-south1
EE.UU. oeste us-west1 us-west2
us-west3
us-west4
EE.UU. oeste 2 us-west1 us-west4
us-west3
us-west2
EE.UU. oeste 3 us-west4 us-west2
us-west3
us-west1
EE.UU. central us-central1 us-east5
us-east4
us-east1
EE.UU. norte central us-east5 us-central1
us-east4
us-east1
EE.UU. sur central us-south1 us-east5
us-central1
us-east1
EE.UU. oeste central us-west3 us-central1
us-west4
us-west2
Canadá central northamerica-northeast2 northamerica-northeast1
us-east5
us-east4
Canadá este northamerica-northeast1 northamerica-northeast2
us-east4
us-east5
Europa oeste europe-west4 europe-west1
europe-west3
europe-west9
Europa norte europe-west1 europe-west2
europe-west9
europe-west4
Francia central europe-west9 europe-west1
europe-west2
europe-west3
Francia sur europe-west9 europe-southwest1
europe-west8
europe-west1
Alemania oeste central europe-west3 europe-west4
europe-west1
europe-west6
Alemania norte europe-west3 europe-west4
europe-central2
europe-west2
Suiza norte europe-west6 europe-west8
europe-west12
europe-west3
Suiza oeste europe-west6 europe-west9
europe-west8
europe-west3
Reino Unido sur europe-west2 europe-west1
europe-west9
europe-west4
Reino Unido oeste europe-west2 europe-west1
europe-west9
europe-west4
Noruega este europe-north1 europe-west4
europe-central2
europe-west1
Noruega oeste europe-north1 europe-west4
europe-central2
europe-west1
Suecia central europe-north1 europe-west4
europe-central2
europe-west1
Asia oriental asia-east2 asia-east1
asia-southeast1
asia-northeast1
Sudeste asiático asia-southeast1 asia-southeast2
asia-east1
asia-south1
Este de Japón asia-northeast1 asia-northeast2
asia-northeast3
asia-east1
Oeste de Japón asia-northeast2 asia-northeast1
asia-northeast3
asia-east1
Corea central asia-northeast3 asia-northeast2
asia-northeast1
asia-east1
Australia Oriental australia-southeast1 australia-southeast2
asia-southeast2
asia-southeast1
Sudeste de Australia australia-southeast2 australia-southeast1
asia-southeast1
asia-east1
Australia central australia-southeast1 australia-southeast2
asia-southeast2
asia-southeast1
India Occidental asia-south1 asia-south2
me-central1
asia-southeast1
India central asia-south1 asia-south2
me-central1
asia-southeast1
Sur de India asia-south1 asia-south2
asia-southeast1
me-central1

¿Qué sigue?