Pular para o conteúdo principal
O motor de tabela ArrowFlight permite que o ClickHouse leia de e grave em conjuntos de dados remotos por meio do protocolo Apache Arrow Flight. Essa integração permite que o ClickHouse interaja com servidores externos com suporte a Flight no formato colunar Arrow, com alto desempenho.

Criando uma tabela

Parâmetros do motor
  • host:port — Endereço do servidor Arrow Flight remoto. Se a porta for omitida, a porta padrão 8815 será usada. String.
  • dataset_name — Identificador do conjunto de dados no servidor Flight (usado como um descritor PATH ou em uma consulta SELECT *, dependendo da configuração arrow_flight_request_descriptor_type). String.
  • username — Nome de usuário para autenticação HTTP básica. String.
  • password — Senha para autenticação HTTP básica. String.
Se username e password forem omitidos, a autenticação não será usada (isso só funciona se o servidor Arrow Flight permitir acesso sem autenticação). A lista de colunas é opcional — se omitida, o esquema é inferido do servidor Arrow Flight remoto via GetSchema.

Coleções nomeadas

O motor oferece suporte a coleções nomeadas para armazenar parâmetros de conexão:
Parâmetros da coleção nomeada:

Configurações

  • arrow_flight_request_descriptor_type — Controla como o nome do conjunto de dados é enviado ao servidor Flight. Valores possíveis: path (padrão; envia como um descritor PATH) ou command (envia como um descritor CMD com SELECT * FROM <dataset>). Use command em servidores Flight que esperam comandos SQL (por exemplo, Dremio).

Exemplo de uso

Leitura de dados de um servidor remoto do Arrow Flight:
Inserindo dados em um servidor remoto do Arrow Flight:

Notas

  • Se colunas forem especificadas na instrução CREATE TABLE, elas deverão corresponder ao esquema retornado pelo servidor Flight.
  • Se as colunas forem omitidas, o esquema será inferido automaticamente do servidor remoto.
  • Há suporte tanto para leitura (SELECT) quanto para gravação (INSERT).
  • A configuração arrow_flight_request_descriptor_type controla se o nome do conjunto de dados é enviado como um descritor PATH ou como um descritor CMD que encapsula uma consulta SELECT *.

Veja também

Última modificação em 2 de julho de 2026