- Transferência para armazenamento de longo prazo - Os dados chegam ao ClickHouse como uma camada de analytics em tempo real, alimentando dashboards e relatórios operacionais. Quando os dados ultrapassam sua janela de tempo real, eles podem ser gravados no Iceberg em armazenamento de objetos para retenção durável e econômica em um formato interoperável.
- ETL reverso - Transformações, agregações e enriquecimento realizados dentro do ClickHouse produzem conjuntos de dados derivados que ferramentas downstream e outras equipes precisam consumir. Gravar esses resultados em tabelas Iceberg os disponibiliza para todo o ecossistema de dados.
INSERT INTO SELECT permite mover dados de tabelas do ClickHouse para tabelas Iceberg armazenadas em armazenamento de objetos.
No momento, a gravação em formatos de tabela abertos é compatível apenas com tabelas Iceberg. O suporte parcial para tabelas Delta Lake está em desenvolvimento. As tabelas não devem ser gerenciadas por um catálogo.
Prepare um dataset de origem
Criar e popular uma tabela MergeTree
Gravar dados em uma tabela Iceberg
Criar a tabela Iceberg
IcebergS3.
Observe que o esquema precisa ser simplificado em comparação com a tabela de origem no MergeTree. O ClickHouse oferece suporte a um sistema de tipos mais rico que o Iceberg e os arquivos Parquet subjacentes — tipos como Enum, LowCardinality e UInt8 não são compatíveis com o Iceberg e precisam ser mapeados para tipos compatíveis.
Insira um subconjunto dos dados
INSERT INTO SELECT para gravar dados da tabela MergeTree na tabela Iceberg. Neste exemplo, gravamos apenas as transações de Londres: