Skip to main content

Primeiros passos com lagos de dados

TL;DRUm passo a passo prático para consultar tabelas em lago de dados, acelerá-las com MergeTree e gravar os resultados de volta no Iceberg. Todas as etapas usam conjuntos de dados públicos e funcionam tanto no Cloud quanto no OSS.
As capturas de tela deste guia são do Console SQL do ClickHouse Cloud. Todas as consultas funcionam tanto no Cloud quanto em implantações autogerenciadas.
1

Consulte dados do Iceberg diretamente

A forma mais rápida de começar é com a função de tabela icebergS3() — aponte-a para uma tabela Iceberg no S3 e consulte imediatamente, sem precisar de configuração.Inspecione o esquema:
Execute uma consulta:
O ClickHouse lê os metadados do Iceberg diretamente do S3 e infere o esquema automaticamente. A mesma abordagem funciona para deltaLake(), hudi() e paimon().Saiba mais: Consultando formatos de tabela abertos diretamente abrange os quatro formatos, variantes de cluster para leituras distribuídas e opções de backend de armazenamento (S3, Azure, HDFS, local).
2

Crie um engine de tabela persistente

Para acessos recorrentes, crie uma tabela usando o engine de tabela Iceberg para que você não precise passar o path toda vez. Os dados permanecem no S3 — nenhum dado é duplicado:
Agora consulte-a como qualquer tabela do ClickHouse:
O mecanismo de tabela oferece suporte a cache de dados, cache de metadados, evolução de esquema e time travel. Consulte o guia Consultando diretamente para obter detalhes sobre os recursos do mecanismo de tabela e a matriz de suporte para uma comparação completa dos recursos.
3
A maioria das organizações gerencia tabelas Iceberg por meio de um catálogo de dados para centralizar os metadados das tabelas e a descoberta de dados. O ClickHouse oferece suporte à conexão com seu catálogo usando o mecanismo de banco de dados DataLakeCatalog, expondo todas as tabelas do catálogo como um banco de dados no ClickHouse. Essa é a opção mais escalável, pois, à medida que novas tabelas Iceberg são criadas, elas ficam sempre acessíveis no ClickHouse sem exigir trabalho adicional.Veja um exemplo de conexão com o AWS Glue:
Cada tipo de catálogo exige suas próprias configurações de conexão — consulte os guias de Catálogos para ver a lista completa de catálogos compatíveis e suas opções de configuração.Navegue pelas tabelas e faça consultas:
Os backticks são obrigatórios em <database>.<table> porque o ClickHouse não oferece suporte nativo a mais de um espaço de nomes.
Saiba mais: Como se conectar a um catálogo de dados mostra uma configuração completa do Unity Catalog com exemplos de Delta e Iceberg.
4

Faça uma consulta

Independentemente do método usado acima — função de tabela, engine de tabela ou catálogo — o mesmo ClickHouse SQL pode ser usado em todos eles:
A sintaxe da consulta é idêntica — apenas a cláusula FROM muda. Todas as funções, junções e agregações do ClickHouse SQL funcionam da mesma forma, independentemente da fonte de dados.
5

Carregar um subconjunto no ClickHouse

Consultar o Iceberg diretamente é conveniente, mas o desempenho é limitado pela vazão da rede e pela organização dos arquivos. Para cargas de trabalho analíticas, carregue os dados em uma tabela MergeTree nativa.Primeiro, execute uma consulta filtrada na tabela Iceberg para obter uma referência inicial:
Esta consulta percorre todo o conjunto de dados no S3, já que o Iceberg não reconhece o filtro counterid — espere que leve vários segundos.Agora crie uma tabela MergeTree e carregue os dados:
Execute novamente a mesma consulta na tabela MergeTree:
Como counterid é a primeira coluna da chave ORDER BY, o índice primário esparso do ClickHouse vai direto aos grânulos relevantes — lendo apenas as linhas de counterid = 38 em vez de varrer todas as 100 milhões de linhas. O resultado é uma aceleração drástica.O guia acelerando análises vai além com tipos LowCardinality, índices de texto completo e chaves de ordenação otimizadas, demonstrando uma melhoria de ~40x em um conjunto de dados com 283 milhões de linhas.Saiba mais: Acelerando análises com MergeTree aborda a otimização do esquema, a indexação de texto completo e uma comparação completa de desempenho antes/depois.
6

Gravar de volta em Iceberg

O ClickHouse também pode gravar dados de volta em tabelas Iceberg, permitindo fluxos de ETL reverso — publicando resultados agregados ou subconjuntos para uso por outras ferramentas (Spark, Trino, DuckDB etc.).Crie uma tabela Iceberg para a saída:
Grave resultados agregados:
A tabela Iceberg resultante pode ser lida por qualquer mecanismo compatível com Iceberg.Saiba mais: Gravação de dados em formatos de tabela abertos aborda como gravar dados brutos e resultados agregados usando o conjunto de dados UK Price Paid, incluindo considerações sobre esquema ao mapear tipos do ClickHouse para o Iceberg.

Próximos passos

Agora que você viu o fluxo de trabalho completo, aprofunde-se em cada área:
Última modificação em 10 de junho de 2026