Exporter les résultats de requêtes vers le stockage de blobs
Ce document explique comment exporter le résultat d'une requête exécutée sur une table BigLake vers votre service Azure Blob Storage.
Pour en savoir plus sur la manière dont les données circulent entre BigQuery et Azure Blob Storage, consultez la section Flux de données lors de l'exportation de données.
Limites
Pour obtenir la liste complète des limites applicables aux tables BigLake basées sur Amazon S3 et Blob Storage, consultez la section Limites.
Avant de commencer
Assurez-vous de disposer des ressources suivantes :
- Une connexion pour accéder à votre Blob Storage.
Dans la connexion, vous devez créer une stratégie pour le chemin d'accès du conteneur Blob Storage vers lequel vous souhaitez effectuer l'exportation. Ensuite, créez un rôle disposant de l'autorisation
Microsoft.Storage/storageAccounts/blobServices/containers/write
. - Une table BigLake Blob Storage
- Si vous utilisez le modèle de tarification basé sur la capacité, assurez-vous d'avoir activé l'API BigQuery Reservation pour votre projet. Pour en savoir plus sur les tarifs, consultez la section Tarifs de BigQuery Omni.
Exporter des résultats de requête
BigQuery Omni écrit sur l'emplacement Azure Blob Storage spécifié, quel que soit le contenu existant. La requête d'exportation peut écraser les données existantes ou combiner le résultat de la requête avec des données existantes. Nous vous recommandons d'exporter le résultat de la requête vers un conteneur Blob Storage vide.
Dans la console Google Cloud, accédez à la page BigQuery.
Dans le champ Éditeur de requête, saisissez une requête d'exportation en 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
Remplacez les éléments suivants :
CONNECTION_REGION
: région dans laquelle la connexion a été créée.CONNECTION_NAME
: nom de la connexion que vous avez créée avec l'autorisation nécessaire pour écrire dans le conteneur.AZURE_STORAGE_ACCOUNT_NAME
: nom du compte Blob Storage dans lequel vous souhaitez écrire le résultat de la requête.CONTAINER_NAME
: nom du conteneur dans lequel vous souhaitez écrire le résultat de la requête.FILE_PATH
: chemin vers lequel vous souhaitez écrire le fichier exporté. Il doit contenir exactement un caractère générique*
, n'importe où dans le répertoire feuille de la chaîne du chemin d'accès, par exemple,../aa/*
,../aa/b*c
,../aa/*bc
et../aa/bc*
. BigQuery remplace*
par0000..N
en fonction du nombre de fichiers exportés. BigQuery détermine le nombre et la taille des fichiers. Si BigQuery décide d'exporter deux fichiers, alors*
dans le nom du premier fichier est remplacé par000000000000
, et*
dans le nom du deuxième fichier par000000000001
.FORMAT
: les formats acceptés sontJSON
,AVRO
,CSV
etPARQUET
.QUERY
: requête permettant d'analyser les données stockées dans une table BigLake.
Dépannage
Si vous obtenez une erreur liée à un problème de quota (quota failure
), vérifiez si vous disposez d'une capacité réservée pour vos requêtes. Pour en savoir plus sur les réservations d'emplacements, consultez la section Avant de commencer de ce document.
Étapes suivantes
- Découvrez BigQuery Omni.
- Apprenez à exporter des données de table.
- Découvrez comment interroger des données stockées dans Blob Storage.
- Découvrez comment configurer VPC Service Controls pour BigQuery Omni.