Skip to main content
L’intégration avec le catalogue REST fonctionne uniquement avec les tables Iceberg. Cette intégration prend en charge AWS S3 ainsi que d’autres fournisseurs de stockage cloud.
ClickHouse prend en charge l’intégration avec plusieurs catalogues (Unity, Glue, REST, Polaris, etc.). Ce guide vous accompagne pas à pas pour interroger vos données à l’aide de ClickHouse et de la spécification catalogue REST. Le catalogue REST est une spécification d’API normalisée pour les catalogues Iceberg, prise en charge par différentes plateformes, notamment :
  • Environnements de développement locaux (avec des configurations docker-compose)
  • Services managés comme Tabular.io
  • Implémentations auto-hébergées de catalogue REST
Cette fonctionnalité étant en bêta, vous devez l’activer avec : SET allow_database_iceberg = 1;

Configuration d’un environnement de développement local

Pour le développement et les tests en local, vous pouvez utiliser une configuration de catalogue REST conteneurisée. Cette approche est idéale pour l’apprentissage, le prototypage et les environnements de développement.

Prérequis

  1. Docker and Docker Compose : assurez-vous que Docker est installé et en cours d’exécution.
  2. Exemple de configuration : vous pouvez utiliser différentes configurations docker-compose (voir Autres images Docker ci-dessous).

Configuration d’un catalogue REST local

Vous pouvez utiliser diverses implémentations conteneurisées de catalogue REST, comme Databricks docker-spark-iceberg, qui fournit un environnement complet Spark + Iceberg + catalogue REST avec docker-compose, ce qui en fait une solution idéale pour tester les intégrations Iceberg. Étape 1 : Créez un nouveau dossier dans lequel exécuter l’exemple, puis créez un fichier docker-compose.yml contenant la configuration de Databricks docker-spark-iceberg. Étape 2 : Ensuite, créez un fichier docker-compose.override.yml et ajoutez-y la configuration du conteneur ClickHouse suivante :
Étape 3 : Exécutez la commande suivante pour démarrer les services :
Étape 4 : Attendez que tous les services soient prêts. Vous pouvez consulter les logs :
La configuration du catalogue REST nécessite que les données d’exemple soient d’abord chargées dans les tables Iceberg. Assurez-vous que l’environnement Spark a bien créé et alimenté les tables avant d’essayer de les interroger via ClickHouse. La disponibilité des tables dépend de la configuration docker-compose utilisée et des scripts de chargement des données d’exemple.

Se connecter au REST Catalog local

Connectez-vous à votre conteneur ClickHouse :
Créez ensuite la connexion de base de données au REST catalog :

Interroger les tables du catalogue REST avec ClickHouse

Maintenant que la connexion est établie, vous pouvez commencer à interroger les tables via le catalogue REST. Par exemple :
Si votre installation inclut des données d’exemple (comme le jeu de données des taxis), vous devriez voir des tables telles que :
Si vous ne voyez aucune table, cela signifie généralement que :
  1. L’environnement Spark n’a pas encore créé les tables d’exemple
  2. Le service de catalogue REST n’est pas encore entièrement initialisé
  3. Le chargement des données d’exemple n’est pas encore terminé
Vous pouvez consulter les logs de Spark pour suivre la progression de la création des tables :
Pour interroger une table (si elle est disponible) :
Backticks obligatoiresLes backticks sont obligatoires, car ClickHouse ne prend pas en charge plusieurs espaces de noms.
Pour inspecter le DDL de la table :

Chargement des données de votre lac de données vers ClickHouse

Si vous devez charger des données à partir du catalogue REST dans ClickHouse, commencez par créer une table locale dans ClickHouse :
Chargez ensuite les données de votre table du catalogue REST à l’aide d’un INSERT INTO SELECT :
Dernière modification le 3 juillet 2026