Introducción a la carga de datos desde Cloud Storage

En esta página, se proporciona una descripción general de la carga de datos desde Cloud Storage hasta 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 Datastore
  • Exportaciones de Firestore

Las cargas recurrentes desde Cloud Storage hasta 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 de ubicación

Cuando elijas una ubicación para tus datos, ten en cuenta estas recomendaciones:

  • 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 ser un depósito regional en Tokio.
    • Excepción: Si el conjunto de datos se encuentra en la ubicación multirregional de 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.
  • 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 Copia 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 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, 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 Google 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.
    • BigQuery no garantiza la coherencia de los datos provenientes de fuentes de datos externas. Los cambios en los datos subyacentes mientras se ejecuta una consulta pueden dar como resultado un comportamiento inesperado.

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

    Recupera el URI de Cloud Storage

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

    El URI de Cloud Storage incluye 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á 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 la documentación sobre los URI de solicitud de Cloud Storage.

    BigQuery no admite los URI de origen que incluyen varias barras consecutivas después de la doble barra 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 URI de origen que se muestra a continuación, 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 la consola de Cloud Storage.

      Consola de Cloud Storage

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

    3. En la parte superior de la consola de Cloud Storage, toma nota de la ruta al objeto. Para redactar 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 para ejecutar un trabajo de carga y cargar datos en tablas y particiones nuevas o existentes de BigQuery. 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 y, también, si se agregan datos a una tabla o partición, o se reemplazan los datos existentes.

    • 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 permisos bigquery.jobs.create:

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

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

    Si deseas obtener más información sobre las funciones de Cloud IAM y los permisos 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 debes tener permisos storage.objects.list.

    La función de Cloud IAM predefinida storage.objectViewer puede otorgarse 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, 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 registros de 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 tuvieras dos archivos llamados fed-sample000001.csv y fed-sample000002.csv, el URI del depósito sería 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 Datastore, solo se puede 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 exportaciones de Datastore o Firestore.
    • Cuando cargas datos de exportación de Datastore o Cloud Firestore desde Cloud Storage.

    Próximos pasos

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

    Para obtener información sobre las cargas recurrentes desde Cloud Storage hasta BigQuery, consulta la página sobre las 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.