Server, local ou chDBLes étapes de ce guide peuvent être exécutées à l’aide d’une installation existante de ClickHouse server. Pour des requêtes ad hoc, vous pouvez aussi utiliser clickhouse-local et suivre le même workflow sans démarrer de serveur. Moyennant quelques ajustements mineurs, le processus peut également être effectué avec la distribution intégrée au processus de ClickHouse, chDB.
- Apache Iceberg
- Delta Lake
- Apache Hudi
- Apache Paimon
La fonction de table Exemple :Exemple (ClickHouse Cloud) :Exemple :Pour les fonctionnalités prises en charge, notamment le partition pruning, la schema evolution, le time travel, le caching et bien d’autres, consultez la matrice de compatibilité. Pour la référence complète, consultez la documentation de la fonction de table
iceberg (alias de icebergS3) lit les tables Iceberg directement depuis l’object storage. Des variantes existent pour chaque backend de stockage : icebergS3, icebergAzure, icebergHDFS et icebergLocal.Exemple de syntaxe :Prise en charge de GCSLa variante S3 des fonctions peut être utilisée avec Google Cloud Storage (GCS).
Variante de cluster
La fonctionicebergS3Cluster distribue les lectures sur plusieurs nœuds d’un cluster ClickHouse. Le nœud initiateur établit des connexions vers tous les nœuds et distribue dynamiquement les fichiers de données. Chaque nœud worker demande et traite des tâches jusqu’à ce que tous les fichiers aient été lus. icebergCluster est un alias de icebergS3Cluster. Des variantes existent également pour Azure (icebergAzureCluster) et HDFS (icebergHDFSCluster).Exemple de syntaxe :Moteur de table
Plutôt que d’utiliser la table function dans chaque requête, vous pouvez créer une table persistante à l’aide du moteur de tableIceberg. Les données résident toujours dans l’object storage et sont lues à la demande — aucune donnée n’est copiée dans ClickHouse. L’avantage est que la table definition est stockée dans ClickHouse et peut être partagée entre utilisateurs et sessions sans que chaque utilisateur ait à spécifier le path de stockage et les credentials. Des variantes du moteur existent pour chaque backend de stockage : IcebergS3 (ou l’alias Iceberg), IcebergAzure, IcebergHDFS et IcebergLocal.Le table engine et la table function prennent tous deux en charge la mise en cache des données, en utilisant le même mécanisme de mise en cache que les moteurs de stockage S3, AzureBlobStorage et HDFS. De plus, un metadata cache stocke les informations des fichiers manifest en mémoire, réduisant ainsi les lectures répétées des métadonnées Iceberg. Ce cache est activé par défaut via le paramètre use_iceberg_metadata_files_cache.Exemple de syntaxe :Le moteur de table Iceberg est un alias de IcebergS3.Prise en charge de GCSLa variante S3 du moteur de table peut être utilisée avec Google Cloud Storage (GCS).
iceberg et du moteur de table Iceberg.