Exportar resultados de consultas a Blob Storage
En este documento se describe cómo exportar el resultado de una consulta que se ejecuta en una tabla de BigLake a Azure Blob Storage.
Para obtener información sobre cómo fluyen los datos entre BigQuery y Azure Blob Storage, consulta Flujo de datos al exportar datos.
Limitaciones
Para ver una lista completa de las limitaciones que se aplican a las tablas de BigLake basadas en Amazon S3 y Blob Storage, consulta Limitaciones.
Antes de empezar
Asegúrate de que tienes los siguientes recursos:
- Una conexión para acceder a Blob Storage.
En la conexión, debes crear una política para la ruta del contenedor de Blob Storage al que quieras exportar los datos. A continuación, en esa política, crea un rol que tenga el permiso
Microsoft.Storage/storageAccounts/blobServices/containers/write
. - Una tabla de BigLake de almacenamiento de blobs.
- Si utilizas el modelo de precios basado en la capacidad, asegúrate de que la API BigQuery Reservation esté habilitada en tu proyecto. Para obtener información sobre los precios, consulta los precios de BigQuery Omni.
Exportar resultados de consultas
BigQuery Omni escribe en la ubicación de Blob Storage especificada, independientemente del contenido que haya. La consulta de exportación puede sobrescribir los datos o combinar el resultado de la consulta con los datos. Te recomendamos que exportes el resultado de la consulta a un contenedor de Blob Storage vacío.
En la Google Cloud consola, ve a la página BigQuery.
En el campo Editor de consultas, introduce una consulta de exportación de GoogleSQL:
EXPORT DATA WITH CONNECTION \`CONNECTION_REGION.CONNECTION_NAME\` OPTIONS( uri="azure://AZURE_STORAGE_ACCOUNT_NAME.blob.core.windows.net/CONTAINER_NAME/FILE_PATH/*", format="FORMAT" ) AS QUERY
Haz los cambios siguientes:
CONNECTION_REGION
: la región en la que se creó la conexión.CONNECTION_NAME
: el nombre de la conexión que has creado con el permiso necesario para escribir en el contenedor.AZURE_STORAGE_ACCOUNT_NAME
: el nombre de la cuenta de Blob Storage en la que quieres escribir el resultado de la consulta.CONTAINER_NAME
: el nombre del contenedor en el que quieras escribir el resultado de la consulta.FILE_PATH
: la ruta en la que quieres escribir el archivo exportado. Debe contener exactamente un comodín*
en cualquier parte del directorio de hoja de la cadena de ruta. Por ejemplo,../aa/*
,../aa/b*c
,../aa/*bc
y../aa/bc*
. BigQuery sustituye*
por0000..N
en función del número de archivos exportados. BigQuery determina el número y el tamaño de los archivos. Si BigQuery decide exportar dos archivos,*
en el nombre del primer archivo se sustituye por000000000000
, y*
en el nombre del segundo archivo se sustituye por000000000001
.FORMAT
: los formatos admitidos sonJSON
,AVRO
,CSV
yPARQUET
.QUERY
: la consulta para analizar los datos almacenados en una tabla de BigLake.
Solución de problemas
Si recibes un error relacionado con quota failure
, comprueba si has reservado capacidad para tus consultas. Para obtener más información sobre las reservas de slots, consulta la sección Antes de empezar de este documento.
Siguientes pasos
- Consulta información sobre BigQuery Omni.
- Consulta cómo exportar datos de una tabla.
- Consulta cómo consultar datos almacenados en Blob Storage.
- Consulta cómo configurar Controles de Servicio de VPC para BigQuery Omni.