Distribuir dados globalmente com o Azure Cosmos DB

APLICA-SE AO: NoSQL MongoDB Cassandra Gremlin Table

Atualmente, os aplicativos precisam ser altamente responsivos e estar sempre online. Para obter baixa latência e alta disponibilidade, instâncias desses aplicativos precisam ser implantadas em datacenters próximos aos seus usuários. Esses aplicativos geralmente são implantados em vários datacenters e são chamados de distribuídos globalmente. Os aplicativos distribuídos globalmente precisam de um banco de dados distribuído globalmente que possa replicar os dados de maneira transparente em qualquer lugar do mundo, a fim de permitir que os aplicativos operem em uma cópia dos dados próxima de seus usuários.

O Azure Cosmos DB é um sistema de banco de dados distribuído globalmente, que permite ler e gravar os dados das réplicas locais do banco de dados. O Azure Cosmos DB replica de modo transparente os dados para todas as regiões associadas à conta do Azure Cosmos DB. Ele foi projetado para fornecer baixa latência, escalabilidade elástica de taxa de transferência, semântica bem definida para consistência de dados e alta disponibilidade. Em suma, se seu aplicativo precisa de um tempo de resposta rápido em qualquer lugar do mundo, se precisa estar sempre online e precisa de escalabilidade elástica de taxa de transferência e armazenamento ilimitado, você deve criar seu aplicativo usando o Azure Cosmos DB.

É possível configurar os bancos de dados para serem distribuídos globalmente e disponíveis em qualquer uma das regiões do Azure. Para diminuir a latência, coloque os dados próximos da localização dos usuários. A escolha das regiões requeridas depende do alcance global de sua aplicação e onde seus usuários estão localizados. O Azure Cosmos DB oferece uma única imagem do sistema do banco de dados do Azure Cosmos DB distribuído globalmente e os contêineres que o aplicativo pode ler e gravar localmente.

Observação

As contas sem servidor para o Azure Cosmos DB só podem ser executadas em uma única região do Azure. Para obter mais informações, consulte ouso de recursos sem servidor.

Com o Azure Cosmos DB, você poderá adicionar ou remover as regiões associadas à sua conta a qualquer momento. Seu aplicativo não precisa ser pausado ou reimplementado para adicionar ou remover uma região. O Azure Cosmos DB está disponível em todos os cinco ambientes distintos de nuvem do Azure disponíveis para os clientes:

  • Nuvem pública do Azure, que está disponível globalmente.

  • O Microsoft Azure operado pela 21Vianet está disponível através de uma parceria exclusiva entre a Microsoft e a 21Vianet, um dos maiores provedores de Internet do país.

  • O Azure Alemanha fornece serviços sob um modelo de objeto de confiança de dados, que garante que os dados do cliente permaneçam na Alemanha sob o controle da T-Systems International GmbH, uma subsidiária da Deutsche Telecom, atuando como objeto de confiança de dados alemão.

  • Azure Governamental está disponível em quatro regiões nos Estados Unidos para agências do governo dos EUA e seus parceiros.

  • O Azure Governamental para o Departamento de Defesa (DoD) está disponível em duas regiões dos Estados Unidos para o Departamento de Defesa dos EUA.

Topologia de implantação altamente disponível

Principais benefícios da distribuição global

Compilar aplicativos globais de ativo-ativo. Com seu novo protocolo de replicação de gravações de várias regiões, cada região dá suporte a gravações e leituras. A funcionalidade de gravações de várias regiões também permite:

  • Escalabilidade de leitura e gravação elástica ilimitada.
  • 99,999% de leitura e gravação de disponibilidade em todo o mundo.
  • Garantia de leituras e gravações atendidas em menos de 10 milissegundos no percentil 99.

Conforme você adiciona e remove regiões na conta do Azure Cosmos, o aplicativo não precisa ser reimplantado nem pausado e continua altamente disponível o tempo todo.

Crie aplicativos altamente responsivos. Seu aplicativo pode executar leituras e gravações quase em tempo real em todas as regiões escolhidas para o banco de dados. O Azure Cosmos DB manipula internamente a replicação de dados entre regiões com garantias de nível de consistência do nível que você selecionou.

Crie aplicativos altamente disponíveis. A execução de um banco de dados em várias regiões em todo o mundo aumenta a disponibilidade de um banco de dados. Se uma região não estiver disponível, outras regiões manipularão automaticamente as solicitações do aplicativo. O Azure Cosmos DB oferece 99,999% de disponibilidade de leitura e gravação para bancos de dados de várias regiões.

Manter a continuidade dos negócios durante interrupções regionais. O Azure Cosmos DB dá suporte ao failover gerenciado por serviço durante uma interrupção regional. Durante uma indisponibilidade regional, o Azure Cosmos DB continuará mantendo seus SLAs de latência, disponibilidade, consistência e taxa de transferência. Para ajudar a garantir que todo o seu aplicativo esteja altamente disponível, o Azure Cosmos DB oferece uma API de failover manual para simular uma indisponibilidade regional. Ao usar essa API, você pode executar exercícios regulares de continuidade de negócios.

Escala de leitura e taxa de transferência globalmente. Você pode habilitar todas as regiões para ser graváveis e dimensionar de forma elástica as leituras e gravações em todo o mundo. A taxa de transferência que o aplicativo configura em um banco de dados do Azure Cosmos DB ou em um contêiner é provisionada em todas as regiões associadas à conta do Azure Cosmos. A taxa de transferência provisionada é garantida por SLAs com suporte financeiro.

Escolha entre vários modelos de consistência bem definidos. O protocolo de replicação do Azure Cosmos DB oferece cinco modelos de consistência bem definidos, práticos e intuitivos. Cada modelo tem uma compensação entre consistência e desempenho. Usar esses modelos de consistência permitem que você crie aplicativos distribuídos globalmente com facilidade.

Próximas etapas

Leia mais sobre a distribuição global nos seguintes artigos: