Configurações regionais, birregionais e multirregionais

Esta página descreve os diferentes tipos de configurações de instância disponíveis no Spanner e as diferenças e compensações entre eles.

Configurações da instância

Uma configuração de instância do Spanner define a colocação geográfica e a replicação dos bancos de dados nessa instância. Ao criar uma instância, você precisa configurá-lo como regional, birregional ou multirregional. Essa escolha é feita selecionando a configuração de uma instância, que determina onde os dados estão armazenados para essa instância:

As configurações de instâncias com regiões fixas e topologias de replicação são chamadas de configurações da instância base. É possível criar configurações personalizadas da instância e acrescentam mais opções somente leitura réplicas (disponíveis na Enterprise e Enterprise Plus). Não é possível mudar a topologia de replicação das configurações de instâncias básicas. Para mais informações, consulte Réplicas somente leitura.

Você pode mover sua instância de qualquer configuração de instância para qualquer outro local regional, birregional configuração de instância multirregional (por exemplo, de us-central1 a nam3). Também é possível criar uma configuração de instância personalizada com mais réplicas, depois mova a instância para a nova configuração personalizada. Por exemplo: Se a instância estiver em us-central1 e você quiser adicionar uma réplica somente leitura us-west1, você precisa criar uma nova configuração de instância personalizada com us-central1 como a configuração base e adicionar us-west1 como um arquivo réplica. Em seguida, mova a instância para a nova configuração personalizada.

Configurações regionais

Os serviços do Google Cloud estão disponíveis em locais da América do Norte, América do Sul, Europa, Ásia e Austrália. Se os seus usuários e serviços estão localizados em uma única região, escolha uma configuração de instância regional para ter leituras e gravações com a menor latência.

Para qualquer configuração regional de base, o Spanner mantém três réplicas de leitura e gravação, cada uma em uma zona diferente do Google Cloud nessa região. Cada réplica de leitura/gravação contém uma cópia completa do seu banco de dados operacional que pode atender a solicitações de leitura/gravação e somente leitura. O Spanner usa réplicas em diferentes zonas para que caso ocorra uma falha em uma única zona, o banco de dados permaneça disponível.

Configurações disponíveis

O Spanner oferece as seguintes configurações de instâncias regionais básicas:

Nome da configuração básica Descrição do local regional Região opcional
América
northamerica-northeast1 Montreal Ícone de folha Baixo CO2
northamerica-northeast2 Toronto Ícone de folha Baixa emissão de carbono
southamerica-east1 São Paulo Ícone de folha Baixo nível de CO2
southamerica-west1 Santiago Ícone de folha Baixo CO2
us-central1 Iowa Ícone de folha Baixa emissão de carbono Somente leitura: asia-northeast1 1-OR
asia-south1 1-OR
europe-west2 1-OR
europe-west9 1-OR
us-west3 1-OR
us-east1 Carolina do Sul Somente leitura: us-central1 1-OR
us-west1 1-OR
us-east4 Norte da Virgínia
us-east5 Columbus
us-south1 Dallas Ícone de folha Baixo CO2
us-west1 Oregon Ícone de folha Baixo CO2
us-west2 Los Angeles
us-west3 Salt Lake City
us-west4 Las Vegas
Europa
europe-central2 Varsóvia
europe-north1 Finlândia Ícone de folha Baixo CO2
europe-southwest1 Madri Ícone de folha Baixo CO2
europe-west1 Bélgica Ícone de folha Baixo CO2 Somente leitura: us-central1 1-OR
us-west1 1-OR
europe-west2 Londres Ícone de folha Baixo CO2
europe-west3 Frankfurt Ícone de folha Baixo CO2
europe-west4 Países Baixos Ícone de folha Baixo CO2
europe-west6 Zurique Ícone de folha Baixa emissão de carbono
europe-west8 Milão
europe-west9 Paris Ícone de folha Baixo CO2
europe-west10 Berlim Ícone de folha Baixo CO2
europe-west12 Turim
Ásia-Pacífico
asia-east1 Taiwan
asia-east2 Hong Kong
asia-northeast1 Tóquio
asia-northeast2 Osaka
asia-northeast3 Seul
asia-south1 Mumbai
asia-south2 Délhi
asia-southeast1 Singapura
asia-southeast2 Jacarta
australia-southeast1 Sydney
australia-southeast2 Melbourne
Oriente Médio
me-central1 Doha
me-central2 Damã
me-west1 Tel Aviv
África
africa-south1 Johannesburgo

Replicação

As configurações regionais básicas contêm três réplicas de leitura/gravação. Cada mutação do Spanner requer um quórum de gravação composto de uma maioria de réplicas votantes. Os quóruns de gravação são formados a partir de duas das três réplicas configurações regionais. Para mais informações sobre regiões líderes e votação réplicas, consulte Replicação.

É possível criar uma configuração de instância regional personalizada e adicionar réplicas somente leitura opcionais. As réplicas somente leitura podem ajudar a dimensionar leituras e oferecer suporte a leituras desatualizadas de baixa latência. Essas réplicas somente leitura não participam os quóruns de gravação e eles não afetam o Spanner >= 99,99% SLA para instâncias regionais. É possível adicionar locais listados na coluna "Região opcional" como réplicas somente leitura opcionais. Se você não vir o local escolhido para a réplica somente leitura, é possível solicitar uma nova região de réplica somente leitura opcional. Para mais informações, consulte Réplicas somente leitura.

Práticas recomendadas de desempenho para configurações regionais

Para um desempenho ideal, siga estas práticas recomendadas:

  • Crie um esquema que previna uso excessivo do ponto de acesso e outros problemas de desempenho.
  • Coloque recursos de computação essenciais na mesma região instância do Spanner.
  • Provisione capacidade de computação suficiente para manter a utilização total da CPU de alta prioridade abaixo de 65%.
  • Para informações sobre a quantidade de throughput por nó do Spanner, consulte Performance de configurações regionais.

Configurações de duas regiões

As configurações birregionais permitem replicar os dados do banco de dados em múltiplas zonas em duas regiões de um único país, conforme definido pelo configuração da instância.

As configurações de duas regiões fazem o seguinte:

  • Fornecer leituras de duas regiões em um único país.
  • Oferecer disponibilidade e SLAs maiores do que as configurações regionais.
  • Atenda aos requisitos de residência de dados.

O Spanner oferece configurações birregionais na Austrália, Alemanha, Índia e Japão.

Para informações sobre a capacidade de processamento por nó do Spanner, consulte Desempenho para configurações birregionais.

Configurações disponíveis

O Spanner oferece as seguintes configurações de instâncias birregionais:

Nome da configuração básica Local do recurso Regiões
dual-region-australia1 au (Austrália) Sydney: australia-southeast1 L,2RW+1W
Melbourne: australia-southeast2 2RW+1W
dual-region-germany1 de (Alemanha) Berlim: europe-west10 L,2RW+1W
Frankfurt: europe-west3 2RW+1W
dual-region-india1 na (Índia) Mumbai: asia-south1 L,2RW+1W
Délhi: asia-south2 2RW+1W
dual-region-japan1 jp (Japão) Tóquio: asia-northeast1 L,2RW+1W
Osaka: asia-northeast2 2RW+1W

Vantagens

As instâncias birregionais oferecem estes benefícios principais:

  • Disponibilidade de 99,999%: em duas regiões no mesmo país, maior do que a disponibilidade de 99,99% fornecida pelas configurações regionais do Spanner.

  • Distribuição de dados: replica automaticamente seus dados entre as duas regiões com garantias fortes de consistência.

  • Requisitos de residência de dados: atende aos requisitos de residência de dados nos países listados em Configurações disponíveis de região dupla.

Replicação

Uma biregião contém seis réplicas, três em cada região. Uma das regiões é designada como a região líder padrão (listada na tabela anterior). É possível mudar a região líder de um banco de dados. Em cada região, há duas réplicas de leitura/gravação e uma réplica testemunha. Quando ambas as regiões são íntegro e em execução em uma configuração birregional, o quórum será estabelecidos em todas as seis réplicas. No mínimo duas réplicas em cada é necessária para formar um quórum e confirmar uma transação.

Failover e failback

Depois de criar uma configuração de duas regiões, você pode conferir a métrica Disponibilidade de quórum de duas regiões no painel Insights do sistema. Essa métrica só está disponível para configurações birregionais. Ela mostra a integridade de três quórums:

  • O quórum de duas regiões, que usa os seguintes nomes de código:
    • au para Austrália
    • de para a Alemanha
    • in para a Índia
    • asia1 para o Japão
  • O quórum de região única em cada região (por exemplo, asia-south1 e asia-south2)

A métrica tem um menu suspenso "Disponibilidade de quórum" que mostra quais regiões estão no modo íntegro ou de interrupção.

A métrica Disponibilidade de quórum de duas regiões ajuda você a tomar decisões de failover autogerenciadas em caso de falhas regionais. Failover autogerenciado geralmente é concluído em um minuto. Para failover e failback manualmente, consulte Alterar quórum de região birregional. O Spanner também oferece suporte a failovers automáticos gerenciados pelo Google, que podem levar até 45 minutos a partir do momento em que a falha é detectada pela primeira vez.

Considere o seguinte ao tomar decisões de failover e failback:

  • Se todos os três quóruns estiverem íntegros, nenhuma ação será necessária.

  • Se uma das regiões sofrer interrupção, é provável que haja e a interrupção do serviço. Isso pode causar menos disponibilidade nos bancos de dados executados no quórum de duas regiões. As gravações também podem falhar porque não é possível estabelecer um quórum e as transações atingem o tempo limite em algum momento. Usando o painel de insights do sistema, observe as taxas de erro e a latência do no seu banco de dados. Se houver aumento na taxa de erros ou latência, recomendamos o failover, que significa mudar o quórum de região dupla para a região que ainda está íntegra. Após a região interrompida estiver íntegro novamente, faça um failback, alterando o quórum dos dois locais de região única para birregional. O Google realiza automaticamente o failover e ao detectar uma interrupção regional. Também é possível realizar o failover manualmente se você detectar uma interrupção. No entanto, você precisa se lembrar de fazer o failback manualmente caso tenha realizado um failover manual.

  • Se o quórum de duas regiões mostrar interrupção, mesmo que as duas regiões esteja íntegras, há um problema de particionamento de rede. As duas regiões são não conseguem mais se comunicar uns com os outros, então cada um se mostra saudável, mesmo embora o sistema geral não seja. Nesse caso, recomendamos que você para a região líder padrão. Depois que o problema da partição de rede resolvido e o quórum de região birregional retornar ao estado íntegro, será necessário o failback.

O tipo birregional oferece nenhum objetivo de ponto de recuperação (RPO) porque não perda de dados durante uma interrupção regional ou quando surge um problema de partição de rede.

Para verificar o modo (único ou duplo) do quórum de região birregional, consulte Verifique o quórum de região birregional.

Práticas recomendadas de failover e failback

As práticas recomendadas de failover e failback incluem:

  • Não faça failover para uma única região se nenhuma falha ou interrupção ocorrer. A falha em uma única região aumenta a possibilidade de indisponibilidade geral do sistema se essa região falhar.
  • Tenha cuidado ao selecionar a região para o failover. A escolha de uma região errada para failover resulta na indisponibilidade do banco de dados, que não pode ser recuperada antes que a região volte a ficar on-line. Para verificar, use um script bash para verificar a integridade da região única antes de executar o failover.
  • Se a região não íntegra for a região líder padrão, mudar a região líder padrão para a região de failover depois de executar o failover. Depois de confirmar ambos regiões estiverem íntegras novamente, execute o failback e altere a região líder à região líder original.
  • Não se esqueça de fazer o failback manual se você tiver realizado um failover manual.

Limitações

Não é possível criar uma configuração personalizada de instância birregional. Não é possível adicionar réplicas somente leitura a uma configuração de instância de duas regiões.

Configurações multirregionais

As configurações regionais do Spanner replicam dados entre vários zonas de uma única região. No entanto, uma configuração regional pode não ser ideal se:

  • Muitas vezes, o aplicativo precisa ler dados de vários locais geográficos (por exemplo, para fornecer dados aos usuários na América do Norte e na Ásia).
  • As gravações se originam de um local diferente das leituras (por exemplo, se você tem grandes cargas de trabalho de gravação na América do Norte e grandes na Europa).

As configurações multirregionais podem:

  • Disponibilize gravações de várias regiões.
  • Mantenha a disponibilidade em caso de falhas regionais.
  • Proporcionam maior disponibilidade e SLAs do que as configurações regionais.

Com as configurações multirregionais, é possível replicar os dados do banco de dados em várias zonas de diversas regiões, conforme definido pela configuração da instância. Essas réplicas extras permitem que você leia dados com menor latência de vários locais próximos ou dentro da região na configuração.

No entanto, há vantagens e desvantagens, porque em uma configuração multirregional, o quórum As réplicas de leitura/gravação são distribuídas por mais de uma região. Talvez você note latência de rede adicional quando as réplicas se comunicam entre si para para formar um quórum de gravação. As leituras não precisam de quórum. O resultado é que o aplicativo consegue leituras mais rápidas em mais lugares ao custo de um pequeno aumento na latência de gravação. Para mais informações, consulte O papel das réplicas em gravações e leituras.

Configurações disponíveis

O Spanner oferece as seguintes configurações de instâncias multirregionais:

Um continente

Nome da configuração básica Local do recurso Regiões de leitura/gravação Regiões somente leitura Região de testemunha Região opcional
asia1 asia1 Tóquio: asia-northeast1 L,2R
Osaka: asia-northeast2 2R
Nenhum Seul: asia-northeast3 Somente leitura: us-west1 1-OR
us-east5 1-OR
asia2 A asia2 Mumbai: asia-south1 L,2R
Delhi: asia-south2 2R
Singapura: asia-southeast1 1R
Nenhum Nenhum
eur3 eur3 Bélgica: europe-west1 L,2R
Países Baixos: europe-west4 2R
Nenhum Finlândia: europe-north1
eur5 eur5 Londres: europe-west2 L,2R
Bélgica: europe-west1 2R
Nenhum Países Baixos: europe-west4 Somente leitura: us-central1 1-OR
us-east1 1-OR
eur6 eur6 Países Baixos: europe-west4 L,2R
Frankfurt: europe-west3 2R
Nenhum Zurique: europe-west6 Somente leitura: us-east1 2-OR
nam3 nam3 Virgínia do Norte: us-east4 L,2R
Carolina do Sul: us-east1 2R
Nenhum Iowa: us-central1 Somente leitura: us-west2 1-OR
asia-southeast1 1-OR
asia-southeast2 1-OR
europe-west1 1-OR
europe-west2 1-OR
nam6 nam6 Iowa: us-central1 L,2R
Carolina do Sul: us-east1 2R
Oregon: us-west1 1R
Los Angeles: us-west2 1R
Oklahoma: us-central2
nam7 nam7 Iowa: us-central1 L,2R
Virgínia do Norte: us-east4 2R
Nenhum Oklahoma: us-central2 Somente leitura: us-east1 2-OR
us-south1 1-OR
europe-west1 2-OR
nam8 nam8 Los Angeles: us-west2 L,2R
Oregon: us-west1 2R
Nenhum Salt Lake City: us-west3 Somente leitura: asia-southeast1 2-OR
europe-west2 2-OR
nam9 nam9 Virgínia do Norte: us-east4 L,2R
Iowa: us-central1 2R
Oregon: us-west1 2R Carolina do Sul: us-east1
nam10 nam10 Iowa: us-central1 L,2R
Salt Lake City: us-west3 2R
Nenhum Oklahoma: us-central2
nam11 nam11 Iowa: us-central1 L,2R
Carolina do Sul: us-east1 2R
Nenhum Oklahoma: us-central2 Somente leitura: us-west1 1-OR
nam12 nam12 Iowa: us-central1 L,2R
Virgínia do Norte: us-east4 2R
Oregon: us-west1 2R Oklahoma: us-central2
nam13 nam13 Oklahoma: us-central2 L,2R
Iowa: us-central1 2R
Nenhum Salt Lake City: us-west3
nam14 nam14 Virgínia do Norte: us-east4 L,2R
Montreal: northamerica-northeast1 2R
Nenhum Carolina do Sul: us-east1
nam15 nam15 Dallas: us-south1 L,2R
Norte da Virgínia: us-east4 2R
Nenhum Iowa: us-central1
nam16 us (Estados Unidos) Iowa: us-central1 L,2R
Virgínia do Norte: us-east4 2R
Nenhum Colombo: us-east5 Somente leitura: us-west2 2-OR

Três continentes

Nome da configuração básica Local do recurso Regiões de leitura/gravação Regiões somente leitura Região de testemunha Região opcional
nam-eur-asia1 nam-eur-asia1 Iowa: us-central1 L,2R
Oklahoma: us-central2 2R
Bélgica: europe-west1 2R
Taiwan: asia-east1 2R
Carolina do Sul: us-east1 Somente leitura: us-west2 1-OR
nam-eur-asia3 nam-eur-asia3 Iowa: us-central1 L,2R
Sul Carolina: us-east1 2R
Bélgica: europe-west1 1R
Países Baixos: europe-west4 1R
Taiwan: asia-east1 2R
Oklahoma: us-central2
  • L: região líder padrão. Para mais informações, consulte Modificar a região líder de um banco de dados.

  • 1R: uma réplica na região.

  • 2R: duas réplicas na região.

  • 2RW+1W: duas réplicas de leitura/gravação e uma réplica de testemunha na região.

  • 1-OR: uma réplica opcional. É possível criar uma configuração de instância regional personalizada e adicionar uma réplica somente leitura opcional. Para mais informações, consulte Criar uma configuração de instância personalizada.

  • 2-OR: até duas réplicas opcionais. É possível criar uma configuração de instância regional personalizada e adicionar uma ou duas réplicas somente leitura opcionais. Recomendamos adicionar dois (quando possível) para manter a latência de leitura baixa. Para mais informações, consulte Crie uma configuração de instância personalizada.

  • A: a configuração da instância é restrita com uma lista de permissões. Para ter acesso, entre em contato com seu gerente técnico de contas.

O local do recurso para uma configuração de instância multirregional determina a garantia da zona de recuperação de desastres para a configuração. Ela define onde os dados são armazenados em repouso.

Vantagens

Instâncias multirregionais oferecem estas vantagens principais:

  • Disponibilidade de 99,999%: maior do que a disponibilidade de 99,99% fornecida pelas configurações regionais do Spanner.

  • Distribuição de dados: o Spanner replica automaticamente seus dados entre regiões com garantias de consistência forte. Isso permite que seus dados sejam armazenados onde serão utilizados, o que pode reduzir a latência e melhorar a experiência do usuário.

  • Consistência externa: mesmo que o Spanner replique em locais geograficamente distantes, ainda é possível usá-lo como se fosse um banco de dados em execução em uma única máquina. As transações têm a garantia de serem serializáveis, e a ordem das transações dentro do banco de dados é a mesma em que os clientes observam as transações que foram confirmadas. A consistência externa é uma garantia mais forte do que a "consistência forte", que é oferecida por alguns outros produtos. Saiba mais sobre essa propriedade em TrueTime e consistência externa.

Replicação

Cada configuração multirregional básica contém duas regiões designadas como regiões de leitura/gravação, cada uma com duas réplicas de leitura/gravação. Uma dessas regiões de leitura/gravação é designada como líder padrão região, o que significa que ela contém as réplicas líderes do seu banco de dados. O Spanner também coloca uma réplica testemunha em uma terceira região chamada região testemunha.

Cada vez que o cliente emite uma mutação para seu banco de dados, forma-se um quórum de gravação, que consiste em uma das réplicas da região líder padrão e quaisquer duas das quatro réplicas votantes adicionais. O quórum pode ser formado por réplicas de duas ou três das regiões que compõem suas configurações, dependendo de quais outras réplicas participam da votação. Além dessas cinco réplicas votantes, algumas configurações multirregionais básicas contêm réplicas somente leitura para atender a leituras de baixa latência. As regiões que contêm imagens réplicas são chamadas de regiões somente leitura.

Em geral, as regiões votantes em uma configuração multirregional são colocadas geograficamente próximas (uma distância inferior a 1.600 km) para formar um quórum de baixa latência que permite gravações rápidas (saiba mais). No entanto, as regiões ainda estão suficientemente distantes, geralmente algumas centenas de quilômetros, para evitar falhas coordenadas. Além disso, se o aplicativo cliente estiver em uma região que não é líder, o Spanner vai usar o roteamento com reconhecimento de líder para rotear transações de leitura e gravação dinamicamente e reduzir a latência no banco de dados. Para mais mais informações, consulte Roteamento com reconhecimento de líder.

É possível criar uma configuração personalizada de instâncias multirregionais com réplicas somente leitura opcionais. As réplicas somente leitura personalizadas que você criar não podem ser incluídas em quóruns de gravação. É possível adicionar locais listados na coluna "Região opcional" como réplicas somente leitura opcionais. Se você não vir seu local da réplica somente leitura escolhido, é possível solicitar uma nova região de réplica somente leitura opcional. Para mais informações, consulte Réplicas somente leitura.

Práticas recomendadas de desempenho para configurações multirregionais

Para um desempenho ideal, siga estas práticas recomendadas:

  • Crie um esquema que previna uso excessivo do ponto de acesso e outros problemas de desempenho.
  • Coloque os recursos de computação para cargas de trabalho de gravação pesadas dentro ou próximos da região líder padrão para conseguir a latência de gravação ideal.
  • Use uma inatividade de pelo menos 15 segundos para ter o desempenho de leitura ideal fora da região líder padrão.
  • Coloque os recursos de computação essenciais em, no mínimo, duas regiões para evitar a dependência de uma única região para suas cargas de trabalho. Uma boa opção é colocá-los ao lado das duas regiões de leitura e gravação diferentes para que qualquer interrupção de região única não afete todos os aplicativos.
  • Provisione capacidade de computação suficiente para manter uso total de CPU de alta prioridade abaixo de 45% em cada região.
  • Para informações sobre a quantidade de throughput por nó do Spanner, consulte Performance de configurações multirregionais.

Mover uma instância

É possível mover sua instância do Spanner de qualquer configuração para outra, incluindo configurações regionais e multirregionais. Mover a instância não causa inatividade, e o Spanner continua a fornecer as garantias de transação comuns, incluindo consistência forte, durante a migração.

Para saber mais sobre a movimentação de instâncias do Spanner, consulte Mover uma instância.

Configurar a região líder padrão

Para que o local da região líder padrão do banco de dados fique mais próximo de conectando clientes para reduzir a latência do aplicativo, é possível alterar para qualquer instância do Spanner que use uma região birregional ou configuração multirregional. Para instruções sobre como alterar o local do região líder, consulte Alterar a região líder de um banco de dados. As únicas regiões qualificadas para se tornar a região líder padrão do seu banco de dados são as regiões de leitura/gravação no seu local birregional ou multirregional configuração do Terraform.

A região líder é responsável por todas as gravações do banco de dados. Portanto, se a maior parte do seu tráfego é proveniente de uma região geográfica, é recomendável movê-la para essa região a fim de reduzir a latência. Atualizar a região líder padrão é barato e não envolve transferências de dados. O novo valor leva alguns minutos para entrar em vigor.

Alterar a região líder padrão é uma mudança de esquema, que usa uma operação de longa duração. Se necessário, é possível receber o status da operação de longa duração.

Vantagens e desvantagens: configurações regionais, birregionais e multirregionais

Configuração Disponibilidade Latência Custo Localidade dos dados
Regional 99,99% Menores latências de gravação dentro da região. Custo mais baixo, consulte a tabela de preços. Permite a governança de dados geográficos.
Birregional 99,999% Menores latências de leitura de duas regiões geográficas um pequeno aumento na latência de gravação. Custo mais elevado, consulte a tabela de preços. Distribui dados por duas regiões de um único país.
Multirregional 99,999% Menores latências de leitura de várias regiões geográficas e um pequeno aumento na latência de gravação. Custo mais elevado, consulte a tabela de preços. Distribui dados em várias regiões dentro da configuração.

A seguir