Introducción a las fuentes de datos externas

En esta página, se proporciona una descripción general sobre la consulta de datos almacenados fuera de BigQuery.

Descripción general

Una fuente de datos externa (también conocida como fuente de datos federada) se puede consultar de forma directa, aunque los datos no estén almacenados en BigQuery. En lugar de cargar o transmitir los datos, debes crear una tabla que haga referencia a la fuente de datos externa.

En BigQuery, se admiten consultas de datos de forma directa desde las aplicaciones siguientes:

Los casos prácticos para fuentes de datos externas incluyen los siguientes:

  • Cargar y limpiar tus datos en una sola pasada mediante la consulta de datos de una fuente de datos externa (una ubicación externa a BigQuery) y la escritura del resultado limpio en el almacenamiento de BigQuery.
  • Tener una pequeña cantidad de datos que cambian con frecuencia y que se unen con otras tablas. Como fuente de datos externa, no es necesario volver a cargar los datos que cambian de manera frecuente cada vez que se actualiza

Limitaciones de la fuente de datos externa

Las limitaciones de la fuente de datos externa incluyen lo siguiente:

  • BigQuery no garantiza la coherencia de los datos de las fuentes de datos externas. Los cambios en los datos subyacentes mientras se ejecuta una consulta pueden dar como resultado un comportamiento inesperado.
  • El rendimiento de las consultas de las fuentes de datos externas puede no ser tan alto como consultar datos en una tabla nativa de BigQuery. Si la velocidad de consulta es una prioridad, carga los datos en BigQuery en lugar de configurar una fuente de datos externa. El rendimiento de las consultas que incluyen una fuente de datos externa depende del tipo de almacenamiento externo. Por ejemplo, consultar datos almacenados en Cloud Storage es más rápido que consultar datos almacenados en Google Drive. En general, el rendimiento de las consultas para las fuentes de datos externas debe ser equivalente a leer los datos directamente desde el almacenamiento externo.
  • No puedes usar el método de la API de JSON TableDataList para recuperar datos de tablas que residen en una fuente de datos externa. Para obtener más información, consulta tabledata.list.

    Para evitar esta limitación, puedes guardar resultados de consultas en una tabla de destino. Luego, puedes usar el método TableDataList en la tabla de resultados.

  • No puedes ejecutar un trabajo de BigQuery en el que se exporten datos desde una fuente de datos externa.

    Para evitar esta limitación, puedes guardar resultados de consultas en una tabla de destino. Luego puedes ejecutar un trabajo de exportación en la tabla de resultados.

  • No puedes hacer referencia a una fuente de datos externa en una consulta de tabla comodín.

  • En las fuentes de datos externas, se admiten la partición o el agrupamiento en clústeres de tablas de manera limitada. Para obtener más información, visita la sección sobre cómo consultar datos particionados de forma externa.

  • Cuando consultas una fuente de datos externa, los resultados no se almacenan en caché. Se te cobrará por cada consulta en una tabla externa, incluso si realizas la misma consulta varias veces. Si necesitas realizar una consulta de manera repetida en una tabla externa que no cambia con frecuencia, considera escribir los resultados de la consulta en una tabla permanente y ejecuta las consultas en la tabla permanente, en su lugar.

  • Actualmente, la consulta de datos en Cloud Bigtable solo está disponible en las siguientes regiones y zonas:
    Región Zonas
    us-central1

    us-central1-a

    us-central1-b

    us-central1-c

    us-central1-f

    europe-west1

    europe-west1-b

    europe-west1-c

    europe-west1-d

  • Tienes un límite de 4 consultas simultáneas en una fuente de datos externa de Cloud Bigtable.

Consideraciones sobre la ubicación

Cuando elijas una ubicación para tus datos, ten en cuenta esta información:

  • Coloca tu conjunto de datos de BigQuery y tu fuente de datos externa.
    • Cuando consultes datos en una fuente de datos externa, como Cloud Storage, los datos que consultas deben estar en la misma ubicación que tu conjunto de datos de BigQuery. Por ejemplo, si tu conjunto de datos de BigQuery está en la ubicación multirregional de la UE, el depósito de Cloud Storage que contiene los datos que consultas debe estar en un depósito multirregional en la UE. Si tu conjunto de datos está en la ubicación multirregional de EE.UU., tu depósito de Cloud Storage debe estar en un depósito multirregional en EE.UU.
    • Si tu conjunto de datos está en una ubicación regional, el depósito de Cloud Storage que contiene los datos que consultas debe estar en un depósito regional en la misma ubicación. Por ejemplo, si tu conjunto de datos está en la región de Tokio, tu depósito de Cloud Storage debe estar un depósito regional en Tokio.
    • Si tu conjunto de datos externo está en Cloud Bigtable, tu conjunto de datos debe estar en los EE.UU. o en la ubicación multirregión de la UE. Tus datos de Cloud Bigtable deben estar en una de las ubicaciones de Cloud Bigtable compatibles.
    • Las consideraciones de ubicación no se aplican a las fuentes de datos externas de Google Drive.
  • Desarrolla un plan de administración de datos.

Para obtener más información sobre las ubicaciones de Cloud Storage, consulta Ubicaciones de depósitos en la documentación de Cloud Storage.

Para mover un conjunto de datos de una ubicación a otra de forma manual, sigue este proceso:

  1. Exporta los datos desde tus tablas de BigQuery hasta un depósito de Cloud Storage regional o multirregión en la misma ubicación que tu conjunto de datos. Por ejemplo, si tu conjunto de datos se encuentra en la ubicación multirregional de la UE, debes exportar tus datos a un depósito regional o multirregional en la UE.

    No se aplican cargos por exportar datos desde BigQuery, pero sí por almacenar los datos exportados en Cloud Storage. Las exportaciones de BigQuery están sujetas a los límites de los trabajos de exportación.

  2. Copia o mueve los datos de tu depósito de Cloud Storage a un depósito regional o multirregional en la ubicación nueva. Por ejemplo, si trasladas tus datos desde la ubicación multirregional de EE.UU. a la ubicación regional de Tokio, debes transferir los datos a un depósito regional en Tokio. Para obtener más información sobre la transferencia de objetos de Cloud Storage, consulta Renombra, copia y mueve objetos en la documentación de Cloud Storage.

    Ten en cuenta que con la transferencia de datos entre regiones se incurre en cargos de salida de red en Cloud Storage.

  3. Después de transferir los datos a un depósito de Cloud Storage en la ubicación nueva, crea un conjunto de datos nuevo de BigQuery (en la ubicación nueva). Luego, carga tus datos del depósito de Cloud Storage en BigQuery.

    No se te cobrará por cargar los datos en BigQuery, pero sí por almacenar los datos en Cloud Storage hasta que borres los datos o el depósito. También se te cobra por almacenar los datos en BigQuery después de que se carguen. La carga de datos en BigQuery está sujeta a los límites de los trabajos de carga.

A fin de obtener más información sobre el uso de Cloud Storage para almacenar y mover conjuntos de datos grandes, consulta Usa Cloud Storage con macrodatos.

Precios de las fuentes de datos externas

Al consultar una fuente de datos externa de BigQuery, se te cobrará por el número de bytes leídos por la consulta. Para obtener más información, visita Precios de consulta y examina los precios de datos almacenados en Cloud Storage.

Si tus datos están almacenados en ORC o Parquet en Cloud Storage, visita la sección sobre cómo consultar de formatos de columna en Cloud Storage.

También se te cobra por almacenar los datos y por cualquier recurso usado por la aplicación fuente, con sujeción a los lineamientos de precios de la aplicación:

  • Para obtener más información sobre los precios de Cloud Storage, consulta los Precios de Cloud Storage.
  • Para obtener información sobre los precios de Cloud Bigtable, consulta Precios.
  • Para obtener información sobre los precios de Google Drive, consulta la sección sobre Precios.

Próximos pasos