Compreender a replicação

Concluído

O Azure Cosmos DB dá suporte à expansão global turnkey usando qualquer uma das ferramentas de gerenciamento disponíveis (SDK, CLI, PowerShell, portal do Azure, etc.). Para entender melhor por que a expansão horizontal é tão sem atrito, é ideal discutir como a replicação funciona no Azure Cosmos DB.

Na configuração mínima, cada contêiner tem um caminho de chave de partição definido. Esse caminho aponta para um par chave-valor em cada item JSON. O valor da chave de partição é então usado para distribuir dados dentro de uma região. Efetivamente, cada contêiner no Azure Cosmos DB distribuirá dados usando o valor da chave de partição para várias partições físicas dentro da mesma região.

Mas, uma partição física não é realmente uma única máquina ou dispositivo físico. A implementação real de uma partição física é como um conjunto de réplicas. Um conjunto de réplicas é um grupo de réplicas que pode crescer e diminuir dinamicamente para atender às necessidades da plataforma de banco de dados.

Cada conjunto de réplicas terá outros conjuntos de réplicas geograficamente distantes que gerenciam as mesmas chaves de partição se os dados forem distribuídos globalmente. Esses conjuntos de réplicas podem encaminhar dados para outros conjuntos de réplicas em regiões diferentes para criar cópias de réplica dos dados.

Diagram of three replica sets with data replicated between them

Uma conta do Azure Cosmos DB replica dados dentro de uma região (distribuição local) entre diferentes conjuntos de réplicas que atendem a vários valores de chave de partição. Os conjuntos de réplicas que gerenciam o mesmo valor de chave de partição são chamados de conjunto de partições, pois encaminharão dados entre si (distribuição global).

Diagram of local and global distribution among replica and partition sets

Nota

A direção em que os dados fluem entre conjuntos de réplicas depende se a conta está configurada com uma região de gravação única ou com a gravação de várias regiões habilitada.