O que é Apache Arrow Flight SQL?
Apache Arrow Flight SQL é um protocolo colunar de alto desempenho para acesso a bancos via gRPC. Ele usa o formato colunar em memória do Apache Arrow e o framework RPC Arrow Flight: o cliente envia SQL, e o servidor transmite resultados como lotes de registros Arrow. Como os dois lados já usam Arrow, não há serialização linha a linha ou conversão de tipos — os dados chegam exatamente no formato consumido pelas ferramentas analíticas. É o sucessor moderno e colunar de JDBC/ODBC para cargas analíticas.
Colunar de ponta a ponta
Os resultados são lotes de registros Apache Arrow — o mesmo formato colunar que suas ferramentas analíticas já usam. Sem transformação de linhas em colunas em nenhum dos lados.
Sem serialização linha a linha
O Flight SQL evita a codificação e decodificação por linha que limita JDBC/ODBC em grandes leituras, transferindo resultados em massa com o mínimo de CPU e cópias.
Streaming gRPC e paralelismo
Baseados no transporte gRPC do Arrow Flight, os resultados são transmitidos e podem ser obtidos em paralelo; assim, grandes conjuntos chegam de forma rápida e previsível.
GizmoSQL: um servidor Flight SQL de código aberto
O GizmoSQL implementa Arrow Flight SQL sobre DuckDB, oferecendo velocidade colunar com um servidor real e seguro: TLS/mTLS, JWT, SSO/OAuth, permissões e escalabilidade horizontal. Conecte-se de qualquer linguagem por ADBC, JDBC ou Python.
# pip install adbc-driver-gizmosql
from adbc_driver_gizmosql import dbapi as gizmosql
conn = gizmosql.connect(
"grpc+tls://gizmosql.example.com:31337",
username="user",
password="...",
)
cur = conn.cursor()
cur.execute("SELECT * FROM sales LIMIT 10")
for row in cur:
print(row)Apache Arrow Flight SQL — perguntas frequentes
O que é Apache Arrow Flight SQL?
Apache Arrow Flight SQL é um protocolo de acesso colunar de alto desempenho a bancos de dados via gRPC. Baseado no formato em memória do Apache Arrow e no framework RPC Arrow Flight, permite que clientes enviem SQL e recebam resultados como lotes de registros Arrow pela rede — eliminando a serialização e conversão linha a linha que tornam drivers tradicionais mais lentos.
O Arrow Flight SQL é mais rápido que JDBC ou ODBC?
Para cargas analíticas e grandes conjuntos de resultados, sim. JDBC/ODBC serializam resultados linha a linha e convertem tipos repetidamente; o Flight SQL transmite lotes colunares Arrow diretamente, com muito menos CPU e cópias — especialmente nas leituras amplas e em massa das quais as análises dependem.
O que é um servidor Arrow Flight SQL?
É um servidor de banco de dados que implementa o protocolo Flight SQL para permitir consultas via Arrow Flight. O GizmoSQL é um servidor Arrow Flight SQL de código aberto desenvolvido com DuckDB — adicione-o à frente dos seus dados para ter acesso SQL colunar rápido e seguro em qualquer linguagem.
Como me conecto a um servidor Flight SQL?
Use um driver ADBC (para GizmoSQL, adbc-driver-gizmosql), um driver JDBC ou o cliente Python. Em Python: gizmosql.connect("grpc+tls://host:31337", username=..., password=...). Há bibliotecas de cliente maduras em quase todas as linguagens.
O GizmoSQL é gratuito?
O GizmoSQL Core é Apache-2.0 e gratuito. O Enterprise adiciona SSO/OAuth, permissões granulares, instrumentação de sessões, perfil automático de consultas e enfileiramento de instruções por US$ 300 por vCPU por ano.