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, ten en cuenta esta información:

  • Ubica los 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 cargas 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 un depósito regional en Tokio.
    • Excepción: Si el 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.
  • Desarrolla un plan de administración de datos.
    • Si eliges un recurso de almacenamiento regional, como un conjunto de datos de BigQuery o un depósito de Cloud Storage, debes desarrollar un plan para administrar tus datos geográficamente.

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

Traslada datos de BigQuery entre ubicaciones

No puedes cambiar la ubicación de un conjunto de datos después de crearlo, pero puedes crear una copia del conjunto de datos. No puedes mover un conjunto de datos de una ubicación a otra, pero puedes mover (recrear) un conjunto de datos de forma manual.

Copia conjuntos de datos

Si deseas ver los pasos para copiar un conjunto de datos, incluso entre regiones, consulta cómo copiar conjuntos de datos.

Mueve un conjunto de datos

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 a 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 multirregión de la UE, debes exportar tus datos a un depósito regional o multirregión 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 multirregión en la ubicación nueva. Por ejemplo, si trasladas tus datos desde la ubicación multirregión 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 la transferencia de datos entre regiones 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.

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 de origen 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 incluye el nombre del 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á gs://mybucket/myfile.csv. Si los 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 de origen 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 de origen, 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, sigue estos pasos:

  1. Abre Cloud Storage Console

    Cloud Storage Console

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

  3. En la parte superior de Cloud Storage Console, toma nota de la ruta de acceso al objeto. Para redactar el URI, reemplaza gs://bucket/file por la ruta de acceso 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 para ejecutar un trabajo de carga y cargar datos en tablas y particiones de BigQuery nuevas o existentes. Si cargas datos desde Cloud Storage, también necesitas permisos para acceder al depósito que contiene tus datos.

Permisos de BigQuery

Para cargar datos en BigQuery, se requieren, como mínimo, los siguientes permisos. Estos permisos son necesarios si los datos se cargan en una tabla o partición nueva, o si se agrega o reemplaza una tabla o partición.

  • bigquery.tables.create
  • bigquery.tables.updateData
  • bigquery.jobs.create

Las siguientes funciones predefinidas de Cloud IAM incluyen los permisos bigquery.tables.create y bigquery.tables.updateData:

  • bigquery.dataEditor
  • bigquery.dataOwner
  • bigquery.admin

Las siguientes funciones predefinidas de Cloud IAM incluyen los permisos de bigquery.jobs.create:

  • bigquery.user
  • bigquery.jobUser
  • bigquery.admin

Además, si un usuario tiene permisos de bigquery.datasets.create, cuando crea un conjunto de datos, se le otorga el acceso de bigquery.dataOwner a él. El acceso de bigquery.dataOwner le permite al usuario crear y actualizar tablas en el conjunto de datos a través de un trabajo de carga.

Para obtener más información sobre las funciones y los permisos de Cloud IAM en BigQuery, consulta Control de acceso.

Permisos de Cloud Storage

Para cargar datos desde un depósito de Cloud Storage, debes tener permisos storage.objects.get. Si usas un comodín de URI, también necesitas permisos storage.objects.list.

Se puede otorgar la función predefinida de Cloud IAM storage.objectViewer para proporcionar 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, que 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 almacenamiento en la documentación de Cloud Storage.

Compatibilidad con 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, debes agregar un asterisco (*) al nombre base. Por ejemplo, si tienes dos archivos llamados fed-sample000001.csv y fed-sample000002.csv, el URI del depósito será gs://mybucket/fed-sample*. Este URI de comodín se puede usar en la consola, la IU web clásica, la CLI, la API o las bibliotecas cliente.

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

Para las exportaciones de Google Cloud Datastore, solo puedes especificar un URI, que debe terminar con .backup_info o .export_metadata.

El carácter comodín * no se permite en las siguientes situaciones:

  • Cuando creas tablas externas vinculadas a las exportaciones de Cloud Datastore o Cloud Firestore
  • Cuando 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.