Passer au contenu principal

Fonction de table azureBlobStorage

Fournit une interface de type table pour sélectionner/insérer des fichiers dans Azure Blob Storage. Cette fonction de table est semblable à la fonction s3.

Syntaxe

Les informations d’identification sont intégrées à la chaîne de connexion, il n’est donc pas nécessaire de fournir account_name/account_key séparément :

Arguments

Collections nommées

Les arguments peuvent également être transmis à l’aide de collections nommées. Dans ce cas, les clés suivantes sont prises en charge :
Les noms des clés des collections nommées diffèrent des noms des arguments positionnels de la fonction : container (et non container_name) et blob_path (et non blobpath).
Exemple :
Vous pouvez également surcharger les valeurs de la collection nommée au moment de l’exécution de la requête :

Valeur renvoyée

Une table ayant la structure spécifiée, permettant de lire ou d’écrire des données dans le fichier spécifié.

Exemples

Lecture avec le format storage_account_url

Lecture avec la syntaxe connection_string

Écriture avec partitionnement

Ensuite, lisez une partition spécifique :

Colonnes virtuelles

  • _path — Chemin du fichier. Type : LowCardinality(String).
  • _file — Nom du fichier. Type : LowCardinality(String).
  • _size — Taille du fichier en octets. Type : Nullable(UInt64). Si la taille du fichier est inconnue, la valeur est NULL.
  • _time — Date de dernière modification du fichier. Type : Nullable(DateTime). Si cette date est inconnue, la valeur est NULL.

Écriture partitionnée

Stratégie de partitionnement

Prise en charge uniquement pour les requêtes INSERT. WILDCARD : remplace le caractère générique {_partition_id} dans le chemin de fichier par la clé de partition réelle. Sélectionnée par défaut uniquement avec des paramètres compatibility antérieurs à 26.6 ; sinon, la valeur par défaut est HIVE (voir le paramètre file_like_engine_default_partition_strategy). HIVE implémente le partitionnement de style Hive pour les lectures et les écritures. Les fichiers sont générés au format suivant : <prefix>/<key1=val1/key2=val2...>/<snowflakeid>.<toLower(file_format)>. Exemple de stratégie de partitionnement HIVE

paramètre use_hive_partitioning

Il s’agit d’une indication permettant à ClickHouse d’analyser les fichiers partitionnés au format Hive au moment de la lecture. Cela n’a aucun effet sur l’écriture. Pour des lectures et écritures symétriques, utilisez l’argument partition_strategy. Lorsque le paramètre use_hive_partitioning est défini sur 1, ClickHouse détecte le partitionnement au format Hive dans le chemin (/name=value/) et permet d’utiliser les colonnes de partitionnement comme colonnes virtuelles dans la requête. Ces colonnes virtuelles auront les mêmes noms que dans le chemin partitionné. Exemple Utiliser une colonne virtuelle créée avec un partitionnement au format Hive

Utilisation des signatures d’accès partagé (SAS)

Une signature d’accès partagé (SAS) est un URI qui accorde un accès restreint à un conteneur ou à un fichier dans Azure Storage. Utilisez-la pour fournir un accès limité dans le temps aux ressources d’un compte de stockage sans partager la clé de ce compte. Plus de détails ici. La fonction azureBlobStorage prend en charge les signatures d’accès partagé (SAS). Un jeton Blob SAS contient toutes les informations nécessaires pour authentifier la requête, y compris le blob cible, les autorisations et la durée de validité. Pour construire une URL de blob, ajoutez le jeton SAS au point de terminaison du service Blob. Par exemple, si le point de terminaison est https://clickhousedocstest.blob.core.windows.net/, la requête devient :
Autrement, les utilisateurs peuvent utiliser l’URL SAS Blob générée :
Dernière modification le 2 juillet 2026