Pular para o conteúdo principal
A integração com o catálogo REST funciona apenas com tabelas Iceberg. Esta integração oferece suporte tanto ao S3 da AWS quanto a outros provedores de armazenamento em nuvem.
O ClickHouse oferece suporte à integração com vários catálogos (Unity, Glue, REST, Polaris etc.). Este guia mostrará o passo a passo para consultar seus dados usando o ClickHouse e a especificação catálogo REST. O catálogo REST é uma especificação padronizada de API para catálogos Iceberg, compatível com várias plataformas, incluindo:
  • Ambientes locais de desenvolvimento (usando configurações com docker-compose)
  • Serviços gerenciados como o Tabular.io
  • Implementações self-hosted de catálogo REST
Como este recurso está em beta, você precisará habilitá-lo com: SET allow_database_iceberg = 1;

Configuração de desenvolvimento local

Para desenvolvimento e testes locais, você pode usar uma configuração de catálogo REST em contêiner. Essa abordagem é ideal para aprendizado, prototipagem e ambientes de desenvolvimento.

Pré-requisitos

  1. Docker e Docker Compose: Certifique-se de que o Docker esteja instalado e em execução
  2. Configuração de exemplo: Você pode usar diferentes configurações do docker-compose (veja as imagens Docker alternativas abaixo)

Configurando o catálogo REST local

Você pode usar várias implementações de catálogo REST em contêiner, como o Databricks docker-spark-iceberg, que fornece um ambiente completo com Spark + Iceberg + catálogo REST via docker-compose, tornando-o ideal para testar integrações com o Iceberg. Etapa 1: Crie uma nova pasta para executar o exemplo e, em seguida, crie um arquivo docker-compose.yml com a configuração do Databricks docker-spark-iceberg. Etapa 2: Em seguida, crie um arquivo docker-compose.override.yml e adicione a ele a seguinte configuração de contêiner do ClickHouse:
Etapa 3: Execute o comando a seguir para iniciar os serviços:
Etapa 4: Aguarde até que todos os serviços estejam prontos. Você pode verificar os logs:
A configuração do catálogo REST exige que os dados de exemplo sejam carregados primeiro nas tabelas Iceberg. Certifique-se de que o ambiente do Spark tenha criado e populado as tabelas antes de tentar fazer consultas nelas por meio do ClickHouse. A disponibilidade das tabelas depende da configuração específica do docker-compose e dos scripts de carregamento dos dados de exemplo.

Conectando-se ao Catálogo REST local

Conecte-se ao seu contêiner do ClickHouse:
Em seguida, crie a conexão do banco de dados com o catálogo REST:

Consultando tabelas do catálogo REST com o ClickHouse

Agora que a conexão está estabelecida, você já pode começar a fazer consultas pelo catálogo REST. Por exemplo:
Se a sua configuração incluir dados de exemplo (como o dataset de táxi), você deverá ver tabelas como:
Se você não vir nenhuma tabela, isso geralmente significa que:
  1. O ambiente Spark ainda não criou as tabelas de exemplo
  2. O serviço de catálogo REST ainda não foi totalmente inicializado
  3. O processo de carregamento dos dados de exemplo ainda não foi concluído
Você pode verificar os logs do Spark para acompanhar o progresso da criação das tabelas:
Para consultar uma tabela (se estiver disponível):
Backticks obrigatóriosOs backticks são obrigatórios porque o ClickHouse não oferece suporte a mais de um espaço de nomes.
Para inspecionar o DDL da tabela:

Carregando dados do seu lago de dados para o ClickHouse

Se você precisar carregar dados do catálogo REST para o ClickHouse, comece criando uma tabela local no ClickHouse:
Em seguida, carregue os dados da tabela do seu catálogo REST usando um INSERT INTO SELECT:
Última modificação em 2 de julho de 2026