O DuckDB 2.0 ganha modo cliente/servidor e sai do embarcado para a rede
Preview do motor analítico traz daemon de rede, C API com ABI estável e repositórios de extensão auto-hospedados. GA prevista para o segundo semestre de 2026.

O DuckDB Labs publicou o preview oficial do DuckDB 2.0, com codinome "Cyanoptera". Segundo o anúncio noticiado pela InfoQ, são mais de 10 mil commits desde a versão 1.5, e a marca representa a maior evolução arquitetural do motor analítico desde que ele ganhou tração como banco colunar embarcado, in-process. A disponibilidade geral (GA) está prevista para o outono de 2026 (primavera aqui no hemisfério sul), e binários de preview e pacotes nightly já estão disponíveis nas principais plataformas e clientes de linguagem.
O ponto que muda a percepção do projeto: o DuckDB nasceu como o "SQLite da analytics", um binário único que roda dentro do seu processo. A 2.0 mantém essa simplicidade de arquivo único, mas passa a aceitar operar como serviço de rede, aproximando a ferramenta do território que hoje é dos data warehouses.
Modo cliente/servidor nativo
O destaque é um modo cliente/servidor nativo, viabilizado pela extensão de protocolo quack e pelo novo comando SQL↳SQL64 conteúdosSQL Server – Como evitar SQL Injection?Data · mai 2019Azure SQL DB Managed InstanceData · abr 2019SQL Server – Como evitar SQL Injection? Pare de utilizar Query Dinâmica como EXEC(@Query)Data · abr 2019Ver tudo em Data → CONNECT. Em vez de precisar embarcar o motor diretamente ou depender de wrappers verbosos de query, qualquer instância DuckDB pode agora rodar como daemon e aceitar conexões pela rede. Dá para anexar um endpoint DuckDB remoto ou até engines relacionais externos como PostgreSQL e MySQL, roteando queries com otimizações de pushdown:
CALL quack_serve(token = 'my_token');
ATTACH 'quack:server.example.com' AS qk (TOKEN 'my_token');
CONNECT qk;
SELECT count(*) FROM events;
DISCONNECT;Essa camada de rede se apoia no controle de concorrência multiversão (MVCC) do DuckDB e no isolamento transacional multi-conexão. Para dar conta de deployments multi-tenant de longa duração, a release também retrabalha o subsistema de observabilidade↳Observabilidade11 conteúdosObservabilidade para APIs: os desafios e benefícios dessa abordagemDev (Back & Front) · jan 2025Falhas em Observabilidade afetam os Apps e a Segurança das OrganizaçõesDev (Back & Front) · nov 2023ADK Java 1.0: O Google quer que você pare de gambiarra Python no seu backendMarketing Tech · abr 2026Ver tudo em DevSecOps → e métricas.
Vale a ressalva que apareceu nas discussões da comunidade citadas pela InfoQ: no r/programming, desenvolvedores reforçaram que o DuckDB não é substituto de OLTP transacional para PostgreSQL. Ele continua sendo um motor OLAP leve, feito para relatórios em lote e SQL ad-hoc sobre arquivos CSV e Parquet remotos no S3.
Extensões finalmente portáveis
Outra mudança estrutural é a revisão da portabilidade de extensões. Até aqui, extensões eram compiladas contra APIs internas C++ instáveis, o que obrigava a recompilar binários a cada release do DuckDB, uma dor conhecida de quem mantém bindings fora de C++.
A 2.0 introduz uma C API versionada, com especificação explícita definida em YAML e garantias de ABI estável. Há também uma camada de abstração de alto nível em C++ e bindings Rust a caminho, permitindo construir a extensão uma vez e rodá-la em atualizações minor e patch. Nas discussões do r/programming reportadas pela fonte, esse ABI estável foi celebrado por resolver problemas antigos com bindings fora de C++, como o overhead de CGO em Go e o monitoramento de concorrência.
Além disso, as organizações deixam de estar limitadas aos repositórios oficiais. A 2.0 permite definir, fixar criptograficamente e auto-hospedar repositórios de extensão próprios:
SET allow_extension_repositories = 'allowed';
CREATE EXTENSION REPOSITORY private_repo FROM 'https://extensions.corp.internal';
INSTALL analytics_toolkit FROM private_repo;
LOAD private_repo/analytics_toolkit;VARIANT, novo parser e ganhos de performance
A release traz o tipo VARIANT à maturidade plena. O motor passa a detectar padrões semiestruturados e a "shreddar" payloads no estilo JSON em representações colunares, do disco ao Parquet, permitindo varredura de campos aninhados sem schema explícito.
O parser derivado do PostgreSQL foi trocado por uma gramática própria baseada em PEG, que permite a extensões registrar sintaxe SQL customizada e fornece localização precisa de origem para diagnósticos. Entre as adições de SQL estão triggers BEFORE e AFTER nativos com transition tables, joins de similaridade APPROX NEAREST para cargas vetoriais e expressões DML dentro de CTEs.
No lado de performance, entram I/O assíncrono sobre object stores como o Amazon S3, planejamento de query com consciência de partição e compressão de strings otimizada com dicionários DICT_FSST por padrão. O formato de armazenamento 2.0 traz carregamento lazy de metadados de coluna e vacuuming incremental de checkpoints para índices ART (Adaptive Radix Tree). O DuckDB também se desacoplou da dependência externa ICU, substituindo a lógica de timezone e collation por um subsistema nativo baseado em IANA, mais compacto e mais rápido nas conversões temporais.
O que muda para os times brasileiros
Para quem monta stack de analytics no Brasil, o modo cliente/servidor mexe com uma decisão comum de arquitetura: onde colocar o DuckDB. Até então, a escolha prática era rodá-lo embarcado em cada job ou notebook. Com o daemon em rede, um mesmo endpoint pode ser compartilhado por vários serviços, o que aproxima o cenário de um mini data warehouse sem os custos de um Redshift ou BigQuery, ponto que engenheiros no Hacker News destacaram ao falar em derrubar custos de nuvem executando cargas maiores que a memória em hardware de consumo.
O ABI estável é a novidade mais aguardada por quem trabalha fora do ecossistema C++, e no Brasil isso pega bastante gente de Go e Rust: menos recompilação a cada versão significa integrações mais duráveis. Já os repositórios de extensão auto-hospedados abrem espaço para times com requisitos de compliance manterem toolkits internos sem depender de repositório público, algo relevante em contexto de LGPD↳LGPD14 conteúdosComo utilizar a LGPD com o objetivo de conformidade e inovação?Gestão Dev & TI · out 2021LGPD coloca pressão inédita nos responsáveis pela tecnologia das empresasData · ago 2021Proteção de dados: LGPD é sancionada e começa a valerData · set 2020Ver tudo em Gestão Dev & TI → e dados sensíveis.
O que ainda está em aberto é o comportamento do modo servidor sob carga real multi-tenant e como a comunidade vai adotar a nova C API na prática. Até a GA no segundo semestre de 2026, tudo isso é preview: dá para testar, mas não é para produção ainda.
Fonte: InfoQ
Este artigo foi escrito por Redação iMasters, um agente de inteligência artificial com revisão editorial humana. Publicado sob revisão editorial de Rafael Chinaglia - iMasters e validação técnica de Tiago Baeta. Saiba como produzimos no expediente.









Comentários
Ninguém comentou ainda. Começa a conversa?