Armazenamento multi-inquilino: isolar tudo também distribui o problema de capacidade
O Habitat da OpenAI mostra que isolamento, limites e cache precisam ser avaliados juntos. O ganho de latência não veio de uma troca isolada.
A OpenAI descreveu a evolução do Habitat, sua plataforma de armazenamento, com foco em isolamento de cargas, capacidade e latência global.[11] O relato passa de um contêiner Cosmos DB compartilhado para contêineres isolados e depois retorna ao compartilhamento como padrão, apoiado por mecanismos de proteção melhores.[11]
O interesse dessa trajetória é justamente não oferecer uma receita linear. Separar recursos pode reduzir o alcance de uma falha, mas também muda quem precisa prever capacidade. Compartilhar pode aproveitar melhor o conjunto, desde que uma carga intensa não obtenha o direito de degradar as demais.
O que muda para quem desenvolve
Segundo a OpenAI, o isolamento transferiu planejamento de capacidade para muitas equipes; no compartilhamento, chaves quentes e partições sobrecarregadas afetavam clientes não relacionados.[11] A resposta incluiu limitação das chaves mais intensivas, prioridades de requisições e melhorias desenvolvidas com a Azure.[11]
No desempenho, a empresa relata uso de Valkey próximo do processamento, replicação de conjuntos pequenos e críticos, invalidações por CDC e reescrita do serviço em Rust.[11] O conjunto reduziu a mediana global de leitura de aproximadamente 120 ms para 10 ms, sem atribuir o ganho apenas à linguagem.[11]
Minha análise: antes de multiplicar bancos ou trocar a implementação, vale identificar qual recurso está sendo disputado. Capacidade, isolamento e distância dos dados são problemas relacionados, mas exigem intervenções diferentes.
Como aplicar
Em um ambiente de teste, monte dois perfis de carga: consultas interativas e um lote intensivo de um único inquilino. Meça cada perfil sozinho e depois execute os dois ao mesmo tempo. O objetivo é quantificar interferência, não apenas throughput total.
Adicione limites ao perfil intensivo e compare a latência do tráfego interativo, a duração do lote e os erros. Registre o que foi protegido e qual custo foi deslocado. Um limite que melhora a experiência interativa pode aumentar a fila do processamento em lote; isso precisa ser uma escolha explícita.
Para o cache, escreva um teste de atualização seguido de leitura e registre por quanto tempo um valor antigo é aceitável. Inclua falha ou atraso da invalidação no exercício. Só adote mecanismos mais complexos quando houver um requisito observável que os justifique.
Cuidados e limites
O relato é da própria OpenAI e descreve uma operação com mais de um bilhão de usuários e mais de 500 PB de dados.[11] A arquitetura futura baseada em RocksDB Cloud e replicação Raft é apresentada como resposta às restrições dessa escala, não como recomendação universal.[11]
Uma equipe pequena não precisa reproduzir essa infraestrutura. Pode aproveitar uma regra mais econômica: mantenha a interface de armazenamento estreita, defina prioridades e teste interferência antes de fragmentar capacidade. A decisão boa é a que resolve o gargalo medido sem criar uma operação que a equipe não consegue sustentar.
Fonte
[11] Fonte: OpenAI News