Observe que os conectores de origem e de destino do Airbyte para ClickHouse estão atualmente em estágio Alpha e não são adequados para transferir grandes conjuntos de dados (> 10 milhões de linhas)
1
Baixe e execute o Airbyte
-
O Airbyte roda no Docker e usa
docker-compose. Certifique-se de baixar e instalar as versões mais recentes do Docker. -
Implante o Airbyte clonando o repositório oficial do GitHub e executando
docker-compose upno terminal de sua preferência: - Assim que o banner do Airbyte aparecer no terminal, você poderá acessar localhost:8000
Como alternativa, você pode se cadastrar e usar o Airbyte Cloud
2
Adicione o ClickHouse como destino
Nesta seção, vamos mostrar como adicionar uma instância do ClickHouse como destino.-
Inicie o servidor ClickHouse (o Airbyte é compatível com a versão
21.8.10.19ou superior do ClickHouse) ou faça login na sua conta do ClickHouse Cloud: - No Airbyte, selecione a página “Destinations” e adicione um novo destino:
-
Selecione ClickHouse na lista suspensa “Destination type” e preencha o formulário “Set up the destination” informando o hostname e as portas do seu ClickHouse, o nome do banco de dados, o nome de usuário e a senha, e selecione se a connection é SSL (equivalente à flag
--securenoclickhouse-client): - Parabéns! Agora você adicionou o ClickHouse como destino no Airbyte.
Para usar o ClickHouse como destino, o usuário que você vai usar precisa ter permissões para criar bancos de dados, tabelas e inserir linhas. Recomendamos criar um usuário dedicado para o Airbyte (por exemplo,
my_airbyte_user) com as seguintes permissões:3
Adicione um conjunto de dados como fonte
O conjunto de dados de exemplo que usaremos é o New York City Taxi Data (no Github). Neste tutorial, usaremos um subconjunto desse conjunto de dados correspondente ao mês de janeiro de 2022.- No Airbyte, selecione a página “Sources” e adicione uma nova fonte do tipo arquivo.
-
Preencha o formulário “Set up the source”, dando um nome à fonte e informando a URL do arquivo NYC Taxi de janeiro de 2022 (veja abaixo). Certifique-se de escolher
parquetcomo formato de arquivo,HTTPS Public Webcomo provedor de armazenamento enyc_taxi_2022como nome do conjunto de dados. - Parabéns! Agora você adicionou um arquivo como fonte no Airbyte.
4
Criar uma conexão e carregar o dataset no ClickHouse
- No Airbyte, selecione a página “Conexões” e adicione uma nova conexão
- Selecione “Usar fonte existente” e selecione os dados de táxi da cidade de Nova York; em seguida, selecione “Usar destino existente” e escolha sua instância do ClickHouse.
-
Preencha o formulário “Configurar a conexão” escolhendo uma frequência de replicação (usaremos
manualneste tutorial) e selecionenyc_taxi_2022como o stream que deseja sincronizar. Certifique-se de escolherNormalized Tabular Datacomo normalização.
- Agora que a conexão foi criada, clique em “Sincronizar agora” para iniciar o carregamento dos dados (já que escolhemos
Manualcomo frequência de replicação)
- Seus dados começarão a ser carregados, e você pode expandir a visualização para ver os logs e o progresso do Airbyte. Quando a operação terminar, você verá uma mensagem
Completed successfullynos logs:
-
Conecte-se à sua instância do ClickHouse com o cliente SQL de sua preferência e verifique a tabela resultante:
A resposta deve ser parecida com:A resposta é:
-
Observe que o Airbyte inferiu automaticamente os tipos de dados e adicionou 4 colunas à tabela de destino. Essas colunas são usadas pelo Airbyte para gerenciar a lógica de replicação e registrar as operações. Mais detalhes estão disponíveis na documentação oficial do Airbyte.
Agora que o conjunto de dados foi carregado na sua instância do ClickHouse, você pode criar uma nova tabela e usar tipos de dados do ClickHouse mais apropriados (mais detalhes).
- Parabéns — você carregou com sucesso os dados de táxi de Nova York no ClickHouse usando o Airbyte!