Skip to main content
O On-Demand Compute está em private preview. Ele não é coberto pelos SLOs ou SLAs do ClickHouse Cloud e podem se aplicar limitações conhecidas e desconhecidas. Consulte Limitações.Entre na lista de espera.
O On-Demand Compute é uma capability do ClickHouse Cloud que oferece ao seu cloud service (um tenant) capacidade adicional e instantânea para workloads compatíveis, sem exigir que você redimensione ou provisione outro service. Esse trabalho é executado em workers do ClickHouse, fora do processamento do próprio service. Os workers vêm de um pool gerenciado compartilhado entre tenants na mesma região, mas cada worker é atribuído a apenas um tenant por vez. Durante o private preview, o On-Demand Compute oferece suporte apenas a consultas SELECT. Você habilita uma consulta por meio de settings em nível de consulta/session/USER, e o ClickHouse atribui workers do pool para executá-la por meio do seu service e endpoint existentes. Isso é diferente da separação de processamento. Um warehouse oferece processamento dedicado e de longa duração por meio de múltiplos services que compartilham dados. O On-Demand Compute oferece workers temporários de um pool compartilhado, por meio do seu service existente. O On-Demand Compute utiliza capabilities totalmente novas:

Quando usar o On-Demand Compute

Durante o private preview, use o On-Demand Compute para consultas SELECT elegíveis e de uso intensivo de computação que você queira executar fora do compute do primary service:
  • Consultas ad hoc e analíticas: execute consultas SELECT de uso intensivo de computação em workers adicionais.
  • Workloads de leitura não críticas: tire leituras selecionadas do primary service.
  • Consultas em lago de dados: consulte dados compatíveis do Apache Iceberg, Delta Lake ou SharedMergeTree em workers adicionais.
  • Compute adicional temporário: solicite workers para consultas elegíveis sem redimensionar o primary service.
O private preview oferece suporte apenas a consultas SELECT. Os workers não executam consultas INSERT, DDL, mutações nem background operations.

Como funciona

  1. Você envia uma consulta SELECT elegível ao seu ClickHouse Cloud service solicitando um número específico de workers. Seu endpoint, sua authentication e sua configuração de RBAC permanecem inalterados
  2. Seu cluster então se conecta ao pool e solicita o número especificado de workers
  3. Os workers são leased por uma duração de pelo menos 60 segundos; se a consulta durar mais, o lease é renovado automaticamente
  4. Os workers recebem a consulta e a executam
  5. A resposta é então enviada de volta ao seu client
  6. Os workers são apagados.
Durante o private preview, cada worker tem 8 vCPUs e 32 GiB de memória. Use distributed_plan_workers_num para especificar quantos workers a consulta solicita.

Usando compute sob demanda

Settings

Use estas configurações para começar a usar o on-demand compute:
Durante o preview, defina as configurações no nível da consulta ou crie um usuário separado com configurações diferentes. Assim fica evidente quais instruções usam o On-Demand Compute.

Exemplo

Algumas consultas não podem ser distribuídas entre os workers:
Para garantir que as consultas recorram à execução local como fallback, use a configuração distributed_plan_fallback_to_local_execution:
Essa consulta solicita cinco workers. O número de workers que o ClickHouse disponibiliza depende do limite do private preview e da capacidade disponível do pool.

Consultas concorrentes

Consultas concorrentes do mesmo ClickHouse Cloud service podem compartilhar os workers atribuídos. O ClickHouse solicita workers adicionais somente quando uma consulta requer mais workers do que os já atribuídos ao service. Por exemplo, se duas consultas concorrentes solicitarem três workers cada, elas podem compartilhar os mesmos três workers. Se outra consulta solicitar cinco workers, o ClickHouse pode usar os três workers atribuídos e solicitar mais dois do pool. Veja o exemplo abaixo:
Elas compartilham os mesmos três workers. Se uma terceira consulta concorrente solicitar cinco workers:
Essa consulta é executada nos três workers existentes, além de dois workers recém-obtidos por lease.

Quando o pool não consegue atender à requisição

A disponibilidade de workers é de melhor esforço durante o private preview. Se houver menos workers disponíveis do que o solicitado, a consulta é executada com os workers que o ClickHouse conseguir atribuir. Por exemplo, uma requisição de cinco workers pode ser executada com três. Se nenhum worker puder ser alocado, a consulta falha. Tente executar a consulta novamente. Se o problema persistir, entre em contato com a equipe de conta da ClickHouse — o pool de preview pode estar esgotado ou dimensionado incorretamente.

Monitoring

Use a system.query_log no seu service para saber quantos workers foram alocados à sua consulta.

Número de workers alocados

Defina log_comment = 'on-demand' (ou um nome de workload) nas consultas On-Demand para poder filtrá-las sem precisar fazer o parsing de Settings.

Regiões disponíveis

O On-Demand Compute é regional: os workers são executados na mesma região do seu serviço. Se a sua região não estiver na lista, solicite-a na lista de espera. Habilitaremos mais regiões conforme a demanda.

Preço

Durante o private preview, o compute sob demanda é gratuito, sujeito a um limite de uso (consulte Limitações). Fale com a account team da ClickHouse caso precise que esse limite seja aumentado. O preço será definido quando o preview terminar. Os participantes do preview serão notificados antes de o recurso ser promovido para beta e antes do início de qualquer cobrança. O modelo previsto é o mesmo do compute do ClickHouse Cloud: você paga pelo compute que utiliza (tempo de worker alocado), e não por dados varridos ou linhas lidas.

Limitações

As limitações a seguir se aplicam durante o private preview. Outras limitações podem se aplicar. Relate comportamentos inesperados ao suporte do ClickHouse ou à sua account team.
  • Apenas consultas SELECT. Os workers não executam consultas INSERT, mutações, DDL nem background operations.
  • Formato com suporte. O private preview oferece suporte a Apache Iceberg, Delta Lake e SharedMergeTree.
  • Parallel replicas. As parallel replicas devem estar desabilitadas.
  • Tamanho do worker. Cada worker tem 8 vCPUs e 32 GiB de memória.
  • Limite de workers. Cada consulta pode solicitar até cinco workers durante o private preview.
  • Capacidade do pool. A disponibilidade de workers é de melhor esforço. Uma consulta pode receber menos workers do que solicitou. Se nenhum worker estiver disponível, a consulta falha.
  • Desempenho. O desempenho varia conforme a consulta. A atribuição de workers, o planejamento distribuído e a transferência dos estágios do plano podem adicionar latência. Alguns formatos de consulta podem apresentar desempenho inferior ao da execução no primary service (suas consultas típicas de menos de um segundo provavelmente terão desempenho melhor no seu cluster)
  • Compatibilidade de consultas. O distributed planner não consegue executar remotamente todos os planos de consulta. Consultas sem suporte podem retornar uma exceção SUPPORT_IS_DISABLED.

Roadmap

O On-Demand Compute é apenas o começo. Trabalhos em andamento ou planejados:
  • Eliminar limitações conhecidas (lacunas de SUPPORT_IS_DISABLED)
  • Pools com workers de tamanhos diferentes
  • Estabilizar o desempenho de consultas em comparação com a execução stateful
  • Suporte a background merge
  • Precificação
  • Calibração do escalonador automático do pool de workers
  • Observabilidade integrada
  • Permissões dedicadas para o On-Demand Compute
  • Expansão de workloads de Data Lake (escrita, compaction, etc…)

Segurança

Os workers vêm de um pool pré-aquecido compartilhado entre services na mesma region, por isso existe uma regra inegociável: um worker atende a um service por vez e nunca é repassado de um service para outro. Nada muda na forma como você acessa o ClickHouse. Os clientes continuam se conectando ao endpoint do seu service com a authentication existente, e apenas o seu service se comunica com os workers em seu nome. Os workers não expõem nenhum endpoint ao cliente.
  • Um service por worker: um worker é alocado (lease) a um único service durante toda a duração desse lease. Ele nunca é compartilhado por dois services ao mesmo tempo.
  • Sem reutilização entre services: quando o lease termina, o worker é destruído e substituído por um novo. Um worker nunca é reatribuído a outro service.
  • Sem dados persistentes: os workers não mantêm armazenamento persistente e não sobrevivem ao término de um lease.
  • Mesma region do seu service: os workers são executados na mesma region do service que os aloca, seguindo regras rígidas de residência de dados.
  • Seus access controls existentes continuam valendo: IP access lists e private endpoints regem o endpoint do seu service exatamente como antes. O On-Demand Compute não adiciona nenhum endpoint para você configurar ou proteger.
  • Sua authentication e RBAC existentes: as consultas são executadas com o mesmo USER e os mesmos privileges de qualquer outra consulta no seu service. Os workers não possuem identity nem modelo de permission próprios.

Isolamento de rede

Enquanto um worker está em lease para o seu service, a plataforma permite o tráfego de rede entre esse worker e o seu service e bloqueia todo o restante. A restrição é aplicada na camada de rede, e não no engine de consulta, portanto não depende da consulta, de suas configurações nem do plan produzido pelo optimizer.
  • Somente o seu service consegue alcançar os seus workers. O path existe durante o lease atual do worker e apenas para aquele service.
  • Workers não atribuídos são inalcançáveis. Um worker aguardando no pool não tem nenhum path de rede de ou para qualquer service até entrar em lease.
  • Workers em lease para services diferentes não conseguem se alcançar. Os workers de um mesmo lease trocam entre si estágios do plano e resultados intermediários. Workers de leases diferentes permanecem isolados uns dos outros, mesmo compartilhando um pool.
  • O path é removido junto com o worker. Encerrar um lease destrói o worker, o que elimina a única coisa que o tráfego tinha permissão para alcançar.
  • O path de request permanece restrito. Seu service acessa o serviço de assignment de workers para fazer lease e renovar workers. Esse path não transporta dados de consulta e se limita à API de assignment.

Authentication e autorização internas

O isolamento de rede determina o que pode alcançar um worker. A authentication determina o que um caller tem permissão de fazer depois de chegar lá, e as duas são aplicadas de forma independente: um caller precisa atender às duas. Toda connection entre o seu service, o serviço de atribuição de workers e os workers é autenticada. Nada é considerado confiável: todas as credentials são emitidas pela plataforma e distribuídas por lease.
  • Uma credential por worker: quando workers são cedidos em lease ao seu service, a plataforma emite um token assinado único para cada um deles. Cada token funciona apenas para aquele worker específico e apenas para o seu service.
  • De curta duração e vinculados ao lease: os tokens expiram junto com o lease que os originou. Renovar um lease emite tokens novos e, uma vez encerrado o lease, seus tokens deixam de autenticar qualquer coisa.
  • Verificados junto à plataforma: o worker valida o token que lhe é apresentado no serviço de identity da plataforma, em vez de confiar em qualquer informação fornecida na request.
Essas credentials são internas ao modo como o ClickHouse Cloud executa a sua consulta. Elas nunca são expostas aos seus clients e não têm relação com a forma como você se autentica no ClickHouse: os clients continuam se conectando com as suas credentials existentes, e os privilégios de consulta continuam sendo regidos pelo RBAC do seu service.

FAQ

Não. Trata-se de uma arquitetura do ClickHouse Cloud: ClickHouse server (distributed plan), data plane (pool de workers e leases) e control plane. A configuração experimental make_distributed_plan e o CBO existem no ClickHouse OSS, mas o pool compartilhado de workers e a execução sem estado são exclusivos do Cloud.
Sim. A versão usada durante o private preview será um build personalizado. Podem ser necessários upgrades adicionais ao longo do preview.
Ainda não temos um preço público para divulgar. Porém, o uso do recurso é gratuito durante o private preview. Dito isso, a filosofia de preço será a mesma do ClickHouse Cloud: cobrar pelo compute utilizado, e não pelos dados varridos ou pelas linhas lidas. As taxas exatas serão publicadas antes de o preço entrar em vigor.
Você pode executar workloads reais, mas este é um private preview: há limitações conhecidas e desconhecidas, e não existe SLO/SLA para a disponibilidade do pool de workers.
O autoscaling altera o compute atribuído ao seu primary service. Durante o private preview, o On-Demand Compute concede a consultas SELECT elegíveis acesso temporário a workers de um pool gerenciado, sem alterar o tamanho do primary service. O autoscaling gerencia a capacidade contínua do service, enquanto o On-Demand Compute fornece compute temporário para workloads específicas.
Fale com o seu account team; eles o apresentarão ao product manager do On-Demand Compute.
Abra um ticket de suporte (severidade 3) ou relate ao product manager. Inclua o query_id, o Service ID e a exceção completa.
Não. Enquanto um worker está em lease para o seu service, a plataforma permite tráfego somente entre esse worker e o seu service, bloqueando-o para todos os demais services. Workers não atribuídos e workers em lease para outro service não têm caminho de rede até o seu. Consulte Isolamento de rede.
Não. Quando um lease termina, o worker é destruído e substituído por um novo, em vez de ser repassado ao próximo service.
Não. O private preview não está disponível no ClickHouse BYOC nem no ClickHouse Private.
Última modificação em 26 de setembro de 2026