Você só tem 2 opções ao realizar o provisionamento de bancos de dados:
Este é o “paradoxo do provisionamento” e, se você já gerenciou um banco de dados de produção, já enfrentou este desafio.
Durante anos, simplesmente aceitamos isso como o custo operacional de bancos de dados relacionais. Mas com a introdução do Databricks Lakebase, um Postgres serverless integrado ao Databricks, o jogo mudou. Deixamos para trás as instâncias de tamanho fixo e "sempre ativas" e adotamos um modelo mais inteligente e elástico: autoscale.
Neste post, vamos nos aprofundar em como o autoscale do Lakebase realmente funciona, por que ele é um salva-vidas para os modernos fluxos de trabalho de desenvolvedor e como configurar seus guardrails para que você possa se concentrar na criação de recursos em vez de gerenciar a infraestrutura.
O Autoscale do Lakebase é um modelo compute inteligente que garante que o tamanho do seu banco de dados corresponda aos requisitos imediatos da sua aplicação.
O dimensionamento correto do seu banco de dados é aquele que sua aplicação requer. O compute do banco de dados deve ser reativo, não estático e restrito a tamanhos predefinidos. Com o autoscale, você define o intervalo de recursos que deseja alocar para o banco de dados. O sistema então ajusta dinamicamente o compute disponível para o seu banco de dados com base na carga atual.
No Lakebase, isso é gerenciado por meio de uma abstração chamada Unidades de compute (CUs). O Autoscale usa uma abordagem granular em que 1 CU aloca 2 GB de memória. Isso permite que o sistema tenha uma escala em incrementos menores e mais precisos, dando a você um controle mais rigoroso tanto sobre o desempenho quanto sobre o custo.
Especificação | Valor |
Memória por Unidade de compute | 2 GB |
Intervalo máximo de autoscale | 32 CU |
Variação máx. de mín. a máx. de CUs | 8 UC |
Tempo limite de inatividade para escala para zero | Definido pelo usuário (p. ex., 15 min) |
Economia de custos estimada (escala para zero) | 70%+ para cargas de trabalho de pico/desenvolvimento |
É necessário reiniciar o banco de dados para a escala | Não |
É fácil supor que o autoscale analisa apenas o uso bruto da CPU, mas o Lakebase é mais inteligente que isso. Para garantir que o desempenho do seu aplicativo não se degrade, o algoritmo de autoscaling monitora três pilares técnicos key:
A métrica mais intuitiva. Se sua aplicação começar a executar joins complexas ou o volume de solicitações concorrentes aumentar, o sistema detecta o pico na utilização do processador e adiciona mais CUs para garantir que a latência da query permaneça baixa.
Bancos de dados relacionais são conhecidos por consumir muita memória. Esta métrica monitora quanta memória seus processos ativos e buffers estão consumindo. Através do monitoramento da memória, o Lakebase pode ser escalado para evitar problemas de falta de memória (OOM) antes que eles travem sua sessão, garantindo disponibilidade consistente mesmo sob carga pesada.
Esta é talvez a métrica de nível profissional mais importante. O conjunto de trabalho é a porção dos seus dados que é acessada com frequência e que, idealmente, deve permanecer “quente” no cache. Se o seu conjunto de trabalho se tornar maior do que a sua RAM alocada no momento, o banco de dados precisa fazer "swap" de dados para o disco, o que é ordens de magnitude mais lento. O Lakebase estima o tamanho do seu conjunto de trabalho e aumenta a escala do seu compute para garantir que seus dados "quentes" permaneçam na memória de alta velocidade.
A grande vantagem dessa abordagem é que tudo acontece sem reinicializações. Suas conexões com o banco de dados permanecem abertas e sua aplicação continua responsiva enquanto a infraestrutura subjacente se adapta de forma fluida ao seu tráfego.
Autoscale não significa recursos infinitos ou contas infinitas. Como desenvolvedor, você precisa ter controle sobre seu piso de desempenho e seu teto de custo. Você pode fazer isso definindo um intervalo de escalonamento.
Ao configurar uma instância compute do Lakebase, você definirá dois valores principais:
Observação Importante sobre Limites: Para manter o dimensionamento previsível e altamente responsivo, o Lakebase exige que a diferença entre o tamanho máximo e mínimo da sua compute não exceda 8 CU (por exemplo, um intervalo de 2 a 10 CU). O Autoscale do Lakebase suporta intervalos de até 32 CU. Para cargas de trabalho que exigem consistentemente mais poder, computes de tamanho fixo maiores também estão disponíveis.

Se você está criando aplicações orientadas por AI ou agentes autônomos no Databricks, seus padrões de tráfego quase nunca são lineares. Um agente pode ficar parado por horas e, de repente, disparar uma cadeia massiva de consultas ao processar um prompt complexo ou ingerir um novo conjunto de dados.
O Autoscale garante que o banco de dados lide com esses picos repentinos de atividade sem exigir que você faça o "pré-aquecimento" da infraestrutura. Quando o agente conclui sua tarefa, o banco de dados reduz a escala automaticamente, protegendo o orçamento do seu projeto.
Os fluxos de trabalho de banco de dados modernos no Lakebase geralmente envolvem ramificação de banco de dados, que é a capacidade de criar ambientes isolados de cópia na gravação para recursos ou PRs específicos.
A maioria desses Branches fica parados 90% do tempo. Com o autoscale, esses ambientes permanecem em sua CU mínima quando não estão sendo usados. No entanto, no momento em que um pipeline de CI/CD começa a executar um teste de integração pesado ou um desenvolvedor inicia uma validação manual de dados, o ambiente escala instantaneamente para fornecer desempenho de nível de produção.
O Autoscale gerencia o horário de atividade, mas o que acontece quando o expediente acaba?
É aqui que a escala para zero se torna a ferramenta definitiva de otimização de custos. Quando habilitado junto com o autoscale, o Lakebase pode detectar períodos de inatividade total. Após um tempo limite definido pelo usuário, como 15 minutos sem query, a compute é totalmente suspensa.
Para ambientes de desenvolvimento ou painéis internos usados apenas durante o horário comercial, essa combinação pode reduzir os custos mensais de compute em 70% ou mais.
A mudança para o autoscale tem tanto a ver com a simplicidade operacional quanto com os custos.
A era do dimensionamento de banco de dados por estimativa acabou. Ao aproveitar o Databricks Lakebase autoscale, você pode parar de atuar como um sysadmin de meio período e começar a se concentrar no que importa: seu código e seus dados.
Defina seus limites, habilite a escala para zero para seus Branches de desenvolvimento e deixe o algoritmo do Lakebase cuidar do trabalho pesado. Seus usuários e seus stakeholders agradecerão a você.
Aprofunde-se na Documentação de Autoscale do Lakebase para aprender a configurar sua primeira instância de compute com autoscale hoje mesmo.
O que é autoscaling? O Autoscaling é um modelo de compute inteligente que garante que o tamanho do seu banco de dados corresponda aos requisitos da sua aplicação. Ele abandona as instâncias de tamanho fixo para um modelo elástico que ajusta o compute disponível para o seu banco de dados com base na carga atual.
Qual é o objetivo principal do autoscale? O objetivo principal é resolver o paradoxo do provisionamento, no qual os desenvolvedores tradicionalmente precisavam escolher entre pagar a mais por uma CPU ociosa ou arriscar uma falha do sistema durante picos de carga de trabalho. Ele permite que o database compute seja reativo e dimensionado com precisão, em vez de ficar restrita a um tamanho estático.
Quais são os benefícios de usar o autoscale? Os benefícios incluem simplicidade operacional, eliminando a necessidade de redimensionamento manual, e desempenho previsível por meio do monitoramento proativo da memória e dos conjuntos de trabalho. Além disso, o modelo granular de 2 GB por CU oferece um ajuste mais fino de custo e desempenho em comparação com provedores que exigem a duplicação dos tamanhos das instâncias para obter mais RAM.
Como o autoscale gerencia a capacidade dinamicamente? A capacidade é gerenciada por meio de uma abstração granular chamada Unidades de Compute, em que uma unidade aloca 2 GB de memória. O sistema adiciona ou remove essas unidades sem exigir a reinicialização do banco de dados, garantindo que as conexões permaneçam abertas enquanto a infraestrutura subjacente se adapta.
Como o autoscale melhora a escalabilidade da cloud? O autoscale melhora a escalabilidade permitindo que os bancos de dados lidem com picos repentinos de atividade sem exigir pré-aquecimento manual. Essa elasticidade garante que a infraestrutura possa escalar para um desempenho de nível de produção durante tarefas pesadas e escalar de volta automaticamente para proteger os orçamentos quando concluídas.
Quais métricas o Lakebase autoscale monitora? O algoritmo monitora três pilares técnicos principais: carga da CPU para manter a baixa latência de query, uso de memória para evitar problemas de falta de memória e o tamanho do conjunto de trabalho para garantir que os dados acessados com frequência permaneçam no cache.
O que é uma Unidade de compute (CU) no Lakebase? Uma Unidade de compute é uma abstração de recurso granular usada no Lakebase para definir o intervalo de escalonamento. Cada unidade individual fornece exatamente 2 GB de memória.
Qual é o intervalo máximo de CU compatível com o Lakebase autoscale? O Lakebase autoscale é compatível com intervalos de até 32 CU, no máximo. Dentro desse intervalo, o sistema exige que a diferença entre o mínimo e o máximo de CU definidos pelo usuário não exceda 8 CU.
Como o scale to zero funciona no Lakebase? O scale to zero detecta períodos de inatividade total e suspende a instância de compute completamente após um tempo limite definido pelo usuário. Assim que uma nova conexão ou query chega, o banco de dados é retomado no tamanho mínimo de autoscale definido.
Qual é a diferença entre o autoscale e o escala para zero no Lakebase? O autoscale lida com as horas ativas, ajustando o tamanho da compute dentro de um intervalo definido para corresponder à demanda flutuante. O escala para zero lida com os períodos inativos, suspendendo totalmente a instância para eliminar os custos de compute quando não há queries.
Posso usar o autoscale do Lakebase com ramificação de banco de dados? O autoscale é muito benéfico para a ramificação de banco de dados porque permite que ambientes isolados para recursos fiquem em um CU mínimo enquanto estão parados. Esses ambientes ramificados então scale para fornecer desempenho de nível de produção sempre que um desenvolvedor inicia a validação ou um pipeline de CI/CD run testes.
O autoscale exige uma reinicialização do banco de dados? Não. Suas conexões de banco de dados permanecem ativas e abertas enquanto o Lakebase fluidamente escala os recursos subjacentes.
Qual é a proporção de RAM para CU no Lakebase? Cada Unidade de compute (CU) fornece exatamente 2 GB de memória.
Quanto posso economizar usando o scale to zero? Para cargas de trabalho que ficam ativas apenas durante certas partes do dia, como Branches de desenvolvimento ou painéis internos, os usuários geralmente observam reduções nos custos de compute de 70% ou mais.
(Esta publicação no blog foi traduzida utilizando ferramentas baseadas em inteligência artificial) Publicação original
