2 de junho de 20267 min de leitura

Disponibilidade Geral do Failover Automático por Partição para Azure Cosmos DB NoSQL

Sushant Rane

Azure

Banner - Disponibilidade Geral do Failover Automático por Partição para Azure Cosmos DB NoSQL

TL;DR: O Per Partition Automatic Failover (PPAF) do Azure Cosmos DB NoSQL está em GA. Ele permite que partições individuais realizem failover automático para uma região secundária em até 3 minutos (P99), sem exigir alterações na aplicação. Diferente do failover tradicional em nível de conta, o PPAF opera por partição, mantendo a consistência configurada e dispensando lógica de conflito. Para empresas brasileiras, isso significa maior resiliência para workloads críticas (pagamentos, pedidos, IoT) com menor complexidade operacional e sem custo adicional no tier Business Critical.

Hoje, anunciamos a Disponibilidade Geral do Per Partition Automatic Failover (PPAF) para a API NoSQL do Azure Cosmos DB. O PPAF representa um avanço significativo na forma como o Azure Cosmos DB entrega disponibilidade e resiliência para workloads críticas executadas em contas com uma única região de escrita.

Se você depende do Azure Cosmos DB para manter suas aplicações críticas sempre ativas — o PPAF foi feito para você.

Com o PPAF, o Azure Cosmos DB pode recuperar automaticamente partições afetadas, promovendo uma região secundária como nova região de escrita para aquela partição em até 3 minutos no P99, sem exigir alterações na aplicação.

Um failover mais inteligente e granular

O Azure Cosmos DB já suporta deployments ativo-ativo com multi-região de escrita. Com o PPAF, você pode alcançar uma arquitetura ativo-ativo em uma conta de região de escrita única, permitindo que partições individuais realizem failover para outras regiões automaticamente, preservando o nível de consistência configurado.

Tradicionalmente, se a região de escrita da sua conta sofresse uma interrupção, o Azure Cosmos DB precisava realizar failover de toda a conta para uma região secundária, um processo complexo e demorado. O PPAF torna o geo-failover automático e muito mais ágil, realizando failovers no nível de partição. Se um partition-set na região de escrita preferencial falhar, o PPAF promove automaticamente outra região como nova região de escrita para aquele partition-set. As partições não afetadas continuam escrevendo na região preferencial sem interrupção. Quando a região original se recupera, o sistema detecta a recuperação, inicia um failback para a região preferencial e reconcilia automaticamente quaisquer alterações de dados durante o processo.

Active-Active deployments using multi-writer and PPAF.

Casos de uso que o PPAF possibilita

Aplicações críticas que não toleram downtime de escrita. Pagamentos, gerenciamento de pedidos, jogos em tempo real, aplicativos de transporte e workloads de IoT onde cada minuto de indisponibilidade de escrita tem impacto direto nos negócios. Com RTO inferior a 3 minutos no P99, incidentes regionais se tornam não-eventos para a maioria dos seus usuários.

Workloads de região de escrita única que precisam de resiliência multi-região. Clientes que antes consideravam multi-região de escrita apenas para disponibilidade — mas não queriam projetar e operar lógica de resolução de conflitos — agora podem alcançar um perfil de resiliência comparável sem essa complexidade.

Workloads com requisitos estritos de consistência. Sistemas financeiros, ledgers e plataformas de inventário executando com consistência Strong mantêm RPO = 0 durante um failover PPAF. Seu contrato de consistência é honrado de ponta a ponta.

Recuperação quase instantânea durante interrupções

O failover de partição é granular e projetado para ser concluído em até 3 minutos no P99, representando uma melhoria significativa em relação ao failover tradicional em nível de conta.

Na prática, contas do Azure Cosmos DB com PPAF habilitado mantiveram disponibilidade de escrita durante interrupções regionais parciais, com as partições afetadas redirecionando writes para regiões secundárias em minutos.

Transparente para sua aplicação

Sua aplicação não precisa de lógica adicional para aproveitar o PPAF. Você continua escrevendo no endpoint da sua conta do Azure Cosmos DB como de costume. Nos bastidores, os SDKs do Azure Cosmos DB lidam com o redirecionamento quando ocorre um failover de partição, e sua aplicação automaticamente retenta as writes para a nova região de escrita daquela partição. Nenhuma alteração de código é necessária além de atualizar para uma versão de SDK compatível e habilitar o recurso em sua conta.

O que há de novo na Disponibilidade Geral

Desde a preview, expandimos o PPAF nas áreas que os clientes solicitaram:

  • Suporte a consistência mais amplo. Os níveis Strong, Session, Consistent Prefix e Eventual são suportados na GA. Bounded Staleness está no roadmap.
  • Cobertura de SDK em várias linguagens:
    • .NET v3 v3.60.0 ou superior
    • Java v4 v4.79.0 ou superior
    • Python SDK v4.16.0 ou superior
    • Node.js SDK v4.7.0 ou superior
  • Observabilidade em produção. Uma nova métrica PartitionWriteGlobalStatus mostra o número de partições escrevendo em cada região a qualquer momento.
  • Defaults de resiliência. O Per-Partition Circuit Breaker e o Read Hedging são habilitados por padrão para contas com PPAF, com limites configuráveis.
  • Kit de simulação de caos. Um aplicativo de exemplo permite injetar falhas em nível de partição e validar o comportamento do failover com segurança.
  • Precificação. O PPAF está incluído como parte do tier Business Critical do Azure Cosmos DB.

Habilitar o Per Partition Automatic Failover

O PPAF está disponível para contas do Azure Cosmos DB for NoSQL que atendem aos pré-requisitos. Para começar:

  1. Atualize seu SDK para uma versão compatível, conforme descrito na seção de suporte a SDK acima.
  2. Habilite o recurso por meio da lâmina Features nas configurações da conta.

Instruções passo a passo estão disponíveis no guia de como configurar.

Com o Per Partition Automatic Failover, o Azure Cosmos DB redefine como aplicações de região de escrita única alcançam resiliência. Ao combinar failover em nível de partição, consistência preservada e recuperação em até 3 minutos no P99, você pode construir aplicações sempre ativas sem complexidade adicional. Estamos ansiosos para ver como você usará o PPAF para elevar o nível de disponibilidade de suas workloads.

Saiba mais e forneça feedback

Para se aprofundar, explore a documentação do recurso e os recursos abaixo:

Perguntas Frequentes

  • Quais são os requisitos de SDK para usar o PPAF?
    O PPAF requer SDKs atualizados: .NET v3.60.0+, Java v4.79.0+, Python v4.16.0+ e Node.js v4.7.0+. Além disso, é necessário habilitar a feature no portal do Azure. Sem a versão correta do SDK, o redirecionamento automático das writes não funcionará.

  • O PPAF funciona com todos os níveis de consistência?
    Sim, na GA o PPAF suporta Strong, Session, Consistent Prefix e Eventual consistency. O Bounded Staleness está no roadmap. Para workloads que exigem RPO=0, como sistemas financeiros, a consistência Strong é mantida durante o failover.

  • Preciso modificar minha aplicação para usar o PPAF?
    Não. A aplicação continua escrevendo no endpoint da conta como antes. O SDK trata o redirecionamento automaticamente quando uma partição sofre failover. A única exigência é atualizar o SDK e ativar o recurso. Nenhuma mudança de código é necessária.

  • O PPAF está disponível em todos os tiers do Azure Cosmos DB?
    O PPAF está incluído apenas no tier Business Critical. Não está disponível nos tiers Standard ou outros. Isso deve ser considerado no planejamento de custos, especialmente para empresas brasileiras que buscam alta disponibilidade sem custos extras de multi-write.

  • Como o PPAF afeta o RTO e RPO?
    O PPAF oferece RTO de até 3 minutos em P99 para partições afetadas, muito menor que o failover tradicional de conta. Com consistência Strong, o RPO permanece zero. Para consistências mais fracas, o RPO é equivalente ao nível configurado. A recuperação é automática e o failback também é gerenciado pelo sistema.


Artigo originalmente publicado por Sushant Rane em Azure Updates - Latest from Azure Charts.

Gostou? Compartilhe:
Precisa de ajuda?Fale com nossos especialistas 👋
Avatar Walcew - Headset