Configurações regionais e multirregionais

Nesta página, descrevemos as configurações de instância e os dois tipos de configurações de instância que o Cloud Spanner oferece: configurações regionais e multirregionais. Ele também descreve as diferenças e compensações entre configurações regionais e multirregionais.

Configurações da instância

A configuração de uma instância define a localização geográfica e a replicação dos bancos de dados nessa instância. Ao criar uma instância, é necessário configurá-la como regional (todos os recursos estão contidos em uma única região do Google Cloud) ou multirregional (os recursos abrangem mais de uma região). Essa escolha é feita selecionando a configuração de uma instância, que determina onde seus dados serão armazenados para essa instância.

As configurações de instância com regiões fixas e topologias de replicação são chamadas de configurações de instância base. É possível criar configurações de instância personalizadas e adicionar outras réplicas somente leitura opcionais. Não é possível alterar a topologia de replicação das configurações de instância base. Para mais informações, consulte Réplicas somente leitura.

Também é possível mover a instância de qualquer configuração de instância para qualquer outra configuração regional ou multirregional.

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 básica, o Spanner mantém três réplicas de leitura/gravação, cada uma dentro de 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ância 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 Baixa emissão de carbono2
northamerica-northeast2 Toronto ícone de folha Baixa emissão de carbono2
southamerica-east1 São Paulo ícone de folha Baixa emissão de carbono2
southamerica-west1 Santiago ícone de folha Baixa emissão de carbono2
us-central1 Iowa ícone de folha Baixa emissão de carbono2 Somente leitura: asia-northeast1 1-OR
asia-south1 1-OR
europe-west2 1-OR
europe-west9 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
us-west1 Oregon ícone de folha Baixa emissão de carbono2
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 Baixa emissão de carbono2
europe-southwest1 Madri
europe-west1 Bélgica ícone de folha Baixa emissão de carbono2 Somente leitura: us-central1 1-OR
us-west1 1-OR
europe-west2 Londres ícone de folha Baixa emissão de carbono2
europe-west3 Frankfurt ícone de folha Baixa emissão de carbono2
europe-west4 Países Baixos
europe-west6 Zurique ícone de folha Baixa emissão de carbono2
europe-west8 Milão
europe-west9 Paris ícone de folha Baixa emissão de carbono2
europe-west10 Berlim
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

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 pela maioria das réplicas votantes. Os quóruns de gravação são formados a partir de duas das três réplicas em configurações regionais. Para mais informações sobre regiões líderes e réplicas de votação, 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 escalonar leituras e oferecer suporte a leituras desatualizadas de baixa latência. Essas réplicas somente leitura não fazem parte dos quórums de gravação e não afetam o SLA >= 99, 99% do Spanner para instâncias regionais. É possível adicionar locais listados na coluna Região opcional como réplicas somente leitura opcionais. Se o local desejado da réplica somente leitura não é exibido, você pode 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 os recursos de computação essenciais dentro da mesma região que sua instância do Spanner.
  • Provisione capacidade de computação suficiente para manter o uso total de CPU de alta prioridade abaixo de 65%.
  • Para saber a quantidade de capacidade por nó do Spanner, consulte o desempenho das configurações regionais.

Configurações multirregionais

As configurações regionais do Spanner replicam dados entre várias zonas em uma única região. No entanto, uma configuração regional pode não ser ideal nas seguintes situações:

  • Se o aplicativo precisa ler dados de várias localizações geográficas (por exemplo, para veicular dados a usuários na América do Norte e Ásia),
  • Se as gravações forem originadas de um local diferente das leituras (por exemplo, se você tiver grandes cargas de trabalho de gravação na América do Norte e grandes cargas de trabalho de leitura na Europa)

As configurações multirregionais têm outros benefícios, como:

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

As configurações multirregionais permitem replicar os dados do banco de dados, não apenas em várias zonas, mas também em muitas zonas em diversas regiões, conforme definido pela configuração da instância. Essas réplicas adicionais permitem que você leia dados com baixa 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, as réplicas de quórum (leitura/gravação) estão espalhadas por mais de uma região. Portanto, elas podem sofrer uma latência de rede adicional quando se comunicarem entre si para votar em gravações. Em outras palavras, as configurações multirregionais permitem que seu aplicativo tenha leituras mais rápidas em mais locais ao custo de um pequeno aumento na latência de gravação.

Configurações disponíveis

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

Um continente

Nome da configuração básica Local Regiões de leitura/gravação Regiões somente leitura Região de testemunha Região opcional
asia1 Ásia Tóquio: asia-northeast1 L,2R
Osaka: asia-northeast2 2R
Nenhum Seul: asia-northeast3
asia2 A Ásia Mumbai: asia-south1 L,2R
Délhi: asia-south2 2R
Singapura: asia-southeast1 1R
Nenhum Nenhum
eur3 Europa Bélgica: europe-west1 L,2R
Países Baixos: europe-west4 2R
Nenhum Finlândia: europe-north1
eur5 Europa 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 Europa Países Baixos: europe-west4 L,2R
Frankfurt: europe-west3 2R
Nenhum Zurique: europe-west6 Somente leitura: us-east1 2-OR
nam3 América do Norte Virgínia do Norte: us-east4 L,2R
Carolina do Sul: us-east1 2R
Nenhum Iowa: us-central1 Somente leitura: us-west2 1-OR
nam6 América do Norte Iowa: us-central1 L,2R
Carolina do Sul: us-east1 2R
Oregon: us-west1 1R
Los Angeles: us-west2 1R
Oklahoma: us-central2
nam7 América do Norte Iowa: us-central1 L,2R
Virgína do Norte: us-east4 2R
Nenhum Oklahoma: us-central2 Somente leitura: us-east1 2-OU
us-south1 1-OU
europe-west1 2-OU
nam8 América do Norte Los Angeles: us-west2 L,2R
Oregon: us-west1 2R
Nenhum Salt Lake City: us-west3 Somente leitura: asia-southeast1 2R
europe-west2 2R
nam9 América do Norte Virgínia do Norte: us-east4 L,2R
Iowa: us-central1 2R
Oregon: us-west1 2R Carolina do Sul: us-east1
nam10 América do Norte Iowa: us-central1 L,2R
Salt Lake City: us-west3 2R
Nenhum Oklahoma: us-central2
nam11 América do Norte Iowa: us-central1 L,2R
Carolina do Sul: us-east1 2R
Nenhum Oklahoma: us-central2 Somente leitura: us-west1 1-OR
nam12 América do Norte Iowa: us-central1 L,2R
Virgína do Norte: us-east4 2R
Oregon: us-west1 2R Oklahoma: us-central2
nam13 América do Norte Oklahoma: us-central2 L,2R
Iowa: us-central1 2R
Nenhum Salt Lake City: us-west3
nam14 América do Norte Norte da Virgínia: us-east4 L,2R
Montreal: northamerica-northeast1 2R
Nenhum Carolina do Sul: us-east1
nam15 América do Norte Dallas: us-south1 L,2R
Virgínia do Norte: us-east4 2R
Nenhum Iowa: us-central1

Três continentes

Nome da configuração básica Locais Regiões de leitura/gravação Regiões somente leitura Região das Testemunhas
nam-eur-asia1 América do Norte
Europa
Ásia
Iowa: us-central1 L,2R
Oklahoma: us-central2 2R
Bélgica: europe-west1 2R
Taiwan: asia-east1 2R
Carolina do Sul: us-east1
nam-eur-asia3 América do Norte
Europa
Ásia
Iowa: us-central1 L,2R
Carolina do Sul: 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.

  • 1-OR: uma réplica opcional. Crie uma configuração de instância regional personalizada e adicione uma réplica somente leitura opcional. Para mais informações, acesse 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 opcionais somente leitura. Recomendamos adicionar dois (quando possível) para ajudar a manter baixa latência de leitura. Para mais informações, acesse Criar uma configuração de instância personalizada.

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

Benefícios

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 os dados entre regiões com fortes garantias de consistência. Isso permite que seus dados sejam armazenados onde são usados, 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 base contém duas regiões designadas como regiões de leitura/gravação. Cada uma delas contém duas réplicas de leitura/gravação. Uma dessas regiões de leitura/gravação é designada como a região líder padrã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 disponibilizar leituras de baixa latência. As regiões que contêm réplicas somente leitura 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.

É possível criar uma configuração personalizada de instância multirregional com réplicas somente leitura opcionais. As réplicas somente leitura personalizadas que você criar não poderão ser incluídas nos quórums de gravação. É possível adicionar locais listados na coluna Região opcional como réplicas somente leitura opcionais. Se não encontrar o local de réplica somente leitura que você quer, solicite 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á-las ao lado das duas regiões de leitura/gravação diferentes para que nenhuma interrupção de região única não afete todo o aplicativo.
  • Provisione capacidade de computação suficiente para manter o uso total de CPU de alta prioridade abaixo de 45% em cada região.
  • Para saber a quantidade de capacidade por nó do Spanner, consulte o desempenho para configurações multirregionais.

Tipos de região

O Spanner tem três tipos de região: regiões de leitura/gravação, regiões somente leitura e regiões de testemunha.

Regiões de leitura/gravação

Cada configuração multirregional contém duas regiões de leitura/gravação, cada uma contendo duas réplicas de leitura/gravação.

Uma dessas regiões de leitura/gravação é designada como a região líder padrão. Um líder é selecionado a partir das réplicas na região líder padrão para cada divisão. Caso ocorra uma falha na réplica líder, a outra réplica na região líder padrão assume automaticamente a liderança. Na realidade, as líderes executam verificações de integridade em si mesmas e podem desistir da liderança preventivamente se detectarem que não estão íntegras. Na maioria dos casos, quando a região líder padrão retorna a um estado íntegro, ela retoma a liderança automaticamente.

As gravações são processadas primeiro na região líder padrão. É possível monitorar a porcentagem de réplicas em uma determinada região usando a métrica de monitoramento instance/leader_percentage_by_region. Para mais informações, consulte Métricas do Spanner.

A segunda região de leitura/gravação contém outras réplicas que atendem a leituras e participam da votação sobre a confirmação de gravações. Essas outras réplicas na segunda região de leitura/gravação estão qualificadas para serem líderes. No caso improvável da perda de todas as réplicas na região líder padrão, novas réplicas líderes são escolhidas a partir da segunda região de leitura/gravação.

É possível configurar a região líder de um banco de dados seguindo as instruções em Alterar a região líder de um banco de dados. Para mais informações, consulte Configurar a região líder padrão.

Regiões somente leitura

As regiões somente leitura contêm réplicas somente leitura que podem disponibilizar leituras de baixa latência a clientes que estejam fora das regiões de leitura/gravação. As réplicas somente leitura mantêm uma cópia completa dos dados, que é replicada de réplicas de leitura/gravação. Eles não participam da votação sobre a confirmação de gravações, portanto, nunca contribuem para qualquer latência de gravação.

Algumas configurações multirregionais básicas contêm réplicas somente leitura. Também é possível criar uma configuração de instância personalizada e adicionar réplicas somente leitura às configurações de instância personalizadas para escalonar leituras e oferecer suporte a leituras desatualizadas de baixa latência. Todas as réplicas somente leitura estão sujeitas a custos de capacidade de computação e de armazenamento de banco de dados. Além disso, adicionar réplicas somente leitura a uma configuração de instância não altera os SLAs do Spanner da configuração da instância. Para mais informações, consulte Réplicas somente leitura.

Regiões testemunhas

Uma região testemunha contém uma réplica testemunha, que é usada para votar em gravações. As testemunhas se tornam importantes no raro caso de as regiões de leitura/gravação ficarem indisponíveis.

Mover uma instância

Você pode mover sua instância do Spanner de qualquer configuração de instância para qualquer outra configuração de instância, inclusive entre configurações regionais e multirregionais. Mover a instância não causa inatividade, e o Spanner continua a fornecer as garantias de transação habituais, incluindo consistência forte, durante a mudança.

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

Configurar a região líder padrão

Para alterar o local da região líder padrão do seu banco de dados para que fique mais próximo da conexão dos clientes e reduzir a latência do aplicativo, altere a região líder para qualquer instância do Spanner que use uma configuração multirregional. Para instruções sobre como alterar o local da região líder, consulte Alterar a região líder de um banco de dados. As únicas regiões qualificadas para se tornarem a região líder padrão do banco de dados são as regiões de leitura e gravação na configuração multirregional.

A região líder é responsável por processar todas as gravações no banco de dados. Portanto, se a maior parte do tráfego vier de uma região geográfica, será possível movê-lo para essa região para 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 ver o status da operação de longa duração.

Vantagens e desvantagens: configurações regionais versus 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 pricing. Permite a governança de dados geográficos.
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 pricing. Distribui dados em várias regiões dentro da configuração.

A seguir