A ilusão do serverless
- Serverless se consolidou como uma tendência central da tecnologia de nuvem.
- Esse paradigma permite que desenvolvedores se concentrem apenas na lógica de negócio, sem o peso de gerenciar servidores.
- Modelo de cobrança: paga-se apenas pelo que é usado, e o overhead operacional fica praticamente zero.
- Diversos bancos de dados serverless surgiram no mercado, com líderes estabelecidos como Elastic, Confluent e Pinecone disputando espaço com novos entrantes como Neon, WarpStream, Upstash e Turbopuffer.
Problemas dos bancos de dados serverless atuais
- Muitos bancos de dados serverless não são realmente serverless.
- A maior parte dos serviços se baseia em arquitetura cloud-native, que foi uma inovação pensada para a era de server pools.
- Eles operam clusters de servidores e, por meio de software complexo e intervenção humana, prevêem carga e gerenciam capacidade.
- Essa ilusão gera problemas reais para os usuários.
Impacto da arquitetura ineficiente
- A incompatibilidade de arquitetura não é um simples detalhe técnico; ela causa problemas concretos para os usuários.
- O usuário paga por servidores ociosos, pois os clusters de servidores permanecem ativos continuamente para atender diferentes finalidades.
- Problema de escalabilidade: adicionar novos servidores a um cluster leva alguns minutos, o que impede tratar picos de tráfego de forma imediata.
- Baixa flexibilidade de escolha: como exige gestão de infraestrutura para cada região de nuvem, o usuário tem opções de locais de serviço limitadas.
Um modelo insustentável
- Bancos de dados “serverless” baseados em arquitetura de server pool não são sustentáveis.
- Provedores precisam de investimento significativo para operar clusters de servidores, e isso pode levar à alteração de preços.
- Usuários de baixa carga acabam pagando valores excessivos para sustentar o sistema, enquanto usuários de sucesso se deparam com elevação de preço inesperada.
A necessidade de uma arquitetura serverless nativa
- No início da computação em nuvem, a maioria dos bancos de dados “cloud” era legado.
- A arquitetura serverless nativa transfere toda a gestão da infraestrutura para o provedor de nuvem e, em vez de clusters de servidores, utiliza funções sem estado e serviços serverless.
- Essa abordagem trata a infraestrutura de nuvem como um único supercomputador de grande porte, permitindo escalabilidade instantânea e um verdadeiro modelo de pagamento por requisição.
- Teste de litmus: para validar se um banco de dados é realmente serverless nativo, é necessário verificar se ele pode ser implantado em uma conta de nuvem sem provisionar cluster Kubernetes ou VMs.
Apresentação do LambdaDB
- LambdaDB é um novo mecanismo de busca construído como serverless nativo.
- Esse sistema opera como um conjunto de funções e recursos serverless, separando totalmente a lógica do banco de dados da infraestrutura.
- Requisições de usuários passam por um gateway regional e são roteadas para Control Functions ou Data Functions conforme o tipo de requisição.
- Recursos empresariais: LambdaDB oferece recursos como point-in-time recovery e cloning sem cópia, sem necessidade de gerenciamento de infraestrutura.
Como o LambdaDB funciona
- Arquitetura do LambdaDB: todos os componentes são construídos com serviços cloud serverless.
- O gateway valida a API key das requisições dos usuários e roteia para função de controle ou função de dados.
- Funções de controle tratam operações CRUD e solicitações de gestão de dados, enquanto as funções de dados executam a gravação e leitura reais dos dados.
- Caminho de escrita: a Writer Function registra a requisição, grava no buffer de escrita serverless durável e, em seguida, responde ao cliente.
A contradição da eficiência de custos
- LambdaDB reduz custo de computação em comparação com bancos de dados baseados em server pool.
- O custo por unidade do Lambda é maior que o de uma instância EC2, porém a redução vem da redundância necessária para garantir alta disponibilidade e tolerância a falhas.
- Desperdício de capacidade fixa: a média de uso computacional das empresas é de apenas 10% a 20%, então a computação serverless pode reduzir custos em 50% a 90%.
Desempenho e escalabilidade
- Desempenho e escalabilidade: o LambdaDB comprovou seu desempenho em testes adicionando milhões de vetores de 960 dimensões.
- Latência de escrita: com 10 upserts por segundo, a mediana de latência é de 43 ms, e quando o tráfego aumenta 100 vezes ela permanece semelhante.
- Latência de consulta: a latência de consulta é estável em diferentes cargas, e o percentil 99 fica entre 172 ms e 210 ms.
- Esforço de otimização: há otimização contínua para reduzir a latência das funções de consulta, enquanto a infraestrutura serverless também está sendo aprimorada.
Benefícios para clientes
- Economia de custos: o LambdaDB é mais de 10 vezes mais barato porque não há servidores ociosos.
- Escalabilidade imediata e praticamente ilimitada: o LambdaDB pode escalar para milhares de funções paralelas em milissegundos.
- Início e expansão simples: é possível construir aplicações de IA poderosas e, conforme cresce, a arquitetura permanece simples e econômica.
- Recursos empresariais: oferece recursos como point-in-time recovery e cloning sem cópia, sem acrescentar complexidade ou custo.
Planos futuros e visão
- O LambdaDB já processa milhões de requisições por dia em centenas de milhões de documentos.
- Plano de longo prazo: planeja-se suportar outros modelos de dados (relacional, stream, key-value, grafos etc.).
Ainda não há comentários.