Introducción a la carga de datos desde Cloud Storage

Esta página proporciona una descripción general de la carga de datos de Cloud Storage en BigQuery.

Descripción general

Cuando cargas datos de Cloud Storage en BigQuery, tus datos pueden estar en cualquiera de los siguientes formatos:

  • Valores separados por comas (CSV)
  • JSON (delimitado por saltos de línea)
  • Avro
  • Parquet
  • ORC
  • Exportaciones de Cloud Datastore
  • Exportaciones de Cloud Firestore

Las cargas recurrentes desde Cloud Storage a BigQuery son compatibles con el Servicio de transferencia de datos de BigQuery.

BigQuery es compatible con la carga de datos desde cualquiera de las siguientes clases de almacenamiento de Cloud Storage:

  • Multi-Regional
  • Regional
  • Nearline
  • Coldline

Consideraciones sobre la ubicación

Cuando elijas una ubicación para tus datos, considera lo siguiente:
  • 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 estés consultando deben estar en la misma ubicación que tu conjunto de datos de BigQuery. Por ejemplo, si tu conjunto de datos de BigQuery se encuentra en la ubicación multirregional de la UE, el depósito de Cloud Storage que contiene los datos que estás consultando debe estar en un depósito multirregional en la UE. Si tu conjunto de datos se encuentra en la ubicación multirregional de los EE.UU., tu depósito de Cloud Storage debe estar en un depósito multirregional en los EE.UU.
    • Si tu conjunto de datos se encuentra en una ubicación regional, el depósito de Cloud Storage que contiene los datos que estás consultando 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 en 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 multirregional de la UE. Tus datos de Cloud Bigtable deben estar en una de las ubicaciones compatibles de Cloud Bigtable.
    • Las consideraciones sobre la ubicación no se aplican a las fuentes de datos externas de Google Drive.
  • Coloca tus depósitos de Cloud Storage para cargar datos.
    • Si tu conjunto de datos de BigQuery está en una ubicación multirregional, el depósito de Cloud Storage que contiene los datos que estás cargando debe estar en un depósito regional o multirregional en la misma ubicación. Por ejemplo, si tu conjunto de datos de BigQuery está en la UE, el depósito de Cloud Storage debe estar en un depósito regional o multirregional en la UE.
    • Si tu conjunto de datos está en una ubicación regional, tu depósito de Cloud Storage debe ser 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 en un depósito regional en Tokio.
    • Excepción: Si tu conjunto de datos se encuentra en la ubicación multirregional de los EE.UU., puedes cargar datos desde un depósito de Cloud Storage en cualquier ubicación regional o multirregional.
  • Coloca tus depósitos de Cloud Storage para exportar datos.
    • Cuando exportes datos, el depósito de Cloud Storage regional o multirregional debe estar en la misma ubicación que el conjunto de datos de BigQuery. Por ejemplo, si tu conjunto de datos de BigQuery se encuentra en la ubicación multirregional de la UE, el depósito de Cloud Storage que contiene los datos que estás exportando debe estar en un depósito regional o multirregional en la UE.
    • Si tu conjunto de datos está en una ubicación regional, tu depósito de Cloud Storage debe ser 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 en un depósito regional en Tokio.
    • Excepción: Si tu conjunto de datos se encuentra en la ubicación multirregional de los EE.UU., puedes exportar datos desde un depósito de Cloud Storage en cualquier ubicación regional o multirregional.
  • Desarrolla un plan de administración de datos.
Para obtener más información sobre las ubicaciones de Cloud Storage, consulta Ubicaciones de los depósitos en la documentación de Cloud Storage.

Cómo mover datos de BigQuery entre ubicaciones

No puedes cambiar la ubicación de un conjunto de datos después de crearlo. Además, no puedes mover un conjunto de datos de una ubicación a otra. Si necesitas mover un conjunto de datos de una ubicación a otra, sigue este proceso:

  1. Exporta los datos desde tus tablas de BigQuery a un depósito de Cloud Storage regional o multirregional 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, exporta tus datos a un depósito regional o multirregional en la UE.

    No hay cargos por exportar datos desde BigQuery, pero sí incurres en cargos 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 nueva ubicación. Por ejemplo, si mueves tus datos desde la ubicación multirregional de los EE.UU. a la ubicación regional de Tokio, transferirás los datos a un depósito regional en Tokio. Para obtener más información sobre la transferencia de objetos de Cloud Storage, consulta Cómo cambiar el nombre, copiar y mover objetos en la documentación de Cloud Storage.

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

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

    No se te cobrará por cargar los datos en BigQuery, pero incurrirás en cargos 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.

Para obtener más información sobre el uso de Cloud Storage para almacenar y mover conjuntos de datos grandes, consulta Cómo usar Cloud Storage con macrodatos.

Limitaciones

Estás sujeto a las siguientes limitaciones cuando cargas datos en BigQuery desde un depósito de Cloud Storage:

  • Si la ubicación de tu conjunto de datos está configurada en un valor diferente a US, el depósito de Cloud Storage regional o multirregional debe estar en la misma región que el conjunto de datos.

Según el formato de tus datos fuente de Cloud Storage, puede haber limitaciones adicionales. Para obtener más información, consulta:

Cómo recuperar el URI de Cloud Storage

Para cargar los datos desde la fuente de datos de Cloud Storage, debes proporcionar el URI de Cloud Storage.

El URI de Cloud Storage comprende el nombre de tu depósito y tu objeto (nombre del archivo). Por ejemplo, si el depósito de Cloud Storage se llama mybucket y el archivo de datos se llama myfile.csv, el URI del depósito sería gs://mybucket/myfile.csv. Si tus datos se separan en varios archivos, puedes usar un comodín en el URI. Para obtener más información, consulta los URI de solicitud de Cloud Storage.

BigQuery no es compatible con los URI fuente que incluyen varias barras consecutivas después de la barra doble inicial. Los nombres de los objetos de Cloud Storage pueden contener varios caracteres de barras consecutivas ("/"). Sin embargo, BigQuery convierte varias barras consecutivas en una sola barra. Por ejemplo, el siguiente URI fuente, a pesar de ser válido en Cloud Storage, no funciona en BigQuery: gs://[BUCKET]/my//object//name.

Para recuperar el URI de Cloud Storage, haz lo siguiente:

  1. Abre la consola de Cloud Storage.

    Consola de Cloud Storage

  2. Explora la ubicación del objeto (archivo) que contiene los datos fuente.

  3. Anota la ruta hacia el objeto que aparece en la parte superior de la consola de Cloud Storage. Para componer el URI, reemplaza gs://[BUCKET]/[FILE] por la ruta adecuada; por ejemplo, gs://mybucket/myfile.json. [BUCKET] es el nombre del depósito de Cloud Storage y [FILE] es el nombre del objeto (archivo) que contiene los datos.

Permisos necesarios

Cuando cargas datos en BigQuery, necesitas permisos de proyecto o de nivel de conjunto de datos que te permitan cargar datos en tablas y particiones de BigQuery nuevas o existentes. Si cargas datos desde Cloud Storage, también necesitas acceso al depósito que contiene tus datos.

Permisos de BigQuery

Cuando cargas datos en BigQuery desde Cloud Storage, se te debe otorgar la función bigquery.dataOwner o bigquery.dataEditor a nivel de proyecto o a nivel de conjunto de datos. Ambas funciones otorgan a los usuarios y grupos el permiso para cargar datos en una tabla nueva o agregar o reemplazar una tabla existente.

Otorgar las funciones a nivel de proyecto le da al usuario o al grupo permiso para cargar datos en tablas en cada conjunto de datos del proyecto. Otorgar las funciones a nivel de conjunto de datos le da al usuario o al grupo la capacidad para cargar datos solo en las tablas de ese conjunto de datos.

Para obtener más información sobre cómo configurar el acceso al conjunto de datos, consulta Cómo controlar el acceso al conjunto de datos. Para obtener más información sobre las funciones de IAM en BigQuery, consulta Control de acceso.

Permisos de Cloud Storage

Para cargar datos desde un depósito de Cloud Storage, se te deben otorgar permisos de storage.objects.get a nivel del proyecto o en ese depósito individual. Si usas un comodín URI, también debes tener los permisos storage.objects.list.

Se puede otorgar la función predefinida storage.objectViewer de IAM para proporcionar los permisos storage.objects.get y storage.objects.list.

Registros de acceso y almacenamiento de Cloud Storage

Cloud Storage proporciona archivos de registro de acceso y almacenamiento en formato CSV, los cuales se pueden importar directamente a BigQuery para su análisis. Para obtener más información sobre cómo cargar y analizar registros de Cloud Storage, consulta Registros de acceso y registros de almacenamiento en la documentación de Cloud Storage.

Compatibilidad de los comodines para los URI de Cloud Storage

Si tus datos de Cloud Storage están separados en varios archivos que comparten un nombre base común, puedes usar un comodín en el URI cuando cargas los datos.

Para agregar un comodín al URI de Cloud Storage, agregas un asterisco (*) al nombre base. Por ejemplo, si tienes dos archivos con el nombre fed-sample000001.csv y fed-sample000002.csv, el URI del depósito sería gs://mybucket/fed-sample*. Este URI comodín se puede usar en la consola, la IU clásica, la CLI o la API.

Solo puedes usar un comodín para los objetos (nombres de archivos) dentro de tu depósito. El comodín puede aparecer dentro del nombre del objeto o al final del nombre del objeto. No se permite adjuntar un comodín al nombre del depósito.

Para las exportaciones de Google Cloud Datastore, solo se puede especificar un URI y este debe terminar con .backup_info o .export_metadata.

El carácter comodín * no está permitido cuando:

  • Creas tablas externas vinculadas a las exportaciones de Cloud Datastore o Cloud Firestore.
  • Cargas datos de exportación de Cloud Datastore o Cloud Firestore desde Cloud Storage

Próximos pasos

Para obtener información sobre cómo cargar datos desde Cloud Storage a BigQuery, consulta la documentación para tu formato de datos:

Para obtener información sobre las cargas recurrentes desde Cloud Storage a BigQuery, consulta Transferencias de Cloud Storage.

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Si necesitas ayuda, visita nuestra página de asistencia.