Skip to main content
Ce moteur fournit une intégration avec des tables Delta Lake existantes dans les stockages S3, GCP et Azure, et prend en charge aussi bien la lecture que l’écriture (écriture pour S3 et GCS à partir de la version 25.10, pour Azure à partir de la version 26.9).

Créer une table DeltaLake

Par défaut, la table Delta Lake doit déjà exister dans un stockage S3, GCP ou Azure, et les commandes ci-dessous s’y attachent sans définitions de colonnes DDL. Avec allow_delta_lake_create_table = 1, une commande CREATE TABLE avec des colonnes explicites sur un emplacement ne contenant pas de _delta_log crée à la place une nouvelle table Delta Lake en écrivant le commit initial via delta-kernel-rs (la création d’une table partitionnée n’est pas encore prise en charge) et, dans une base de données Unity DataLakeCatalog, la table est également enregistrée dans le catalogue.
Syntaxe
Paramètres du moteur
  • url — URL du bucket avec le chemin vers la table Delta Lake existante.
  • aws_access_key_id, aws_secret_access_key - Informations d’identification à long terme pour l’utilisateur du compte AWS. Vous pouvez les utiliser pour authentifier vos requêtes. Ce paramètre est facultatif. Si aucune information d’identification n’est spécifiée, celles du fichier de configuration sont utilisées.
  • extra_credentials - Facultatif. Utilisé pour transmettre un role_arn pour l’accès basé sur les rôles dans ClickHouse Cloud. Consultez Secure S3 pour les étapes de configuration.
Les paramètres du moteur peuvent être spécifiés à l’aide de collections nommées.Exemple
Avec des collections nommées :

Écrire des données à l’aide d’une table DeltaLake

Une fois la table créée avec le moteur de table DeltaLake, vous pouvez y insérer des données avec :
Les écritures Delta Lake sont une fonctionnalité Beta désactivée par défaut et doivent être activées avec SET allow_delta_lake_writes = 1; (disponible à partir de la version 26.7 ; sur les versions antérieures, utilisez SET allow_experimental_delta_lake_writes = 1;).
L’écriture avec le moteur de table est prise en charge uniquement via delta kernel. Les écritures fonctionnent avec S3 et GCS, et avec Azure à partir de la version 26.9. L’authentification Azure par workload identity (extra_credentials(client_id = ..., tenant_id = ...)) n’est pas prise en charge par delta kernel.

Cache de données

Le moteur de table et la fonction de table DeltaLake prennent en charge le cache de données, à l’instar des stockages S3, AzureBlobStorage et HDFS. Voir “moteur de table S3” pour plus de détails.

Voir aussi

Dernière modification le 26 septembre 2026