Informações gerais sobre o particionamento geográfico

Esta página apresenta e explica como o particionamento geográfico funciona em no Spanner.

O Spanner oferece instâncias regionais e multirregionais do Terraform, que permitem replicar seus dados em localizações geográficas diferentes. O particionamento geográfico permite segmentar e armazenar linhas em sua tabela de banco de dados em diferentes configurações de instância.

Benefícios e casos de uso

Os benefícios do particionamento geográfico incluem:

  • Reduz a latência de gravação e leitura forte, permitindo que você armazene seus dados na mesma localização geográfica da consulta.

  • Otimiza os custos para cargas de trabalho globais assimétricas (por exemplo, Partição us-central1 com 10 nós e uma partição asia-south1 com 2 nós).

Confira a seguir casos de uso comuns:

  • Dados relacionados ao usuário: particionamento geográfico de dados relacionados ao usuário para processar e armazenar dados em uma região mais próxima do usuário.

  • Dados localizados: informações específicas do local, como trânsito e eventos especiais.

Como funciona a segmentação geográfica

Todas as instâncias do Spanner têm uma partição de instância principal, chamada de partição default. Se você não criar partições adicionais, todos os objetos do banco de dados serão armazenados na partição padrão, que está no mesmo local que a configuração da instância.

Para particionar os dados em um banco de dados, é preciso criar partições diferentes na sua instância. Essas partições criadas pelo usuário têm a própria configuração (regional ou multirregional) e contagem de nós. Crie seu banco de dados como faria normalmente. o banco de dados pode interagir partições criadas na mesma instância. Em seguida, crie posições no seu banco de dados que sejam associadas à partição. Por fim, é possível criar tabelas de posicionamento com um atributo de chave de posicionamento. É necessário usar a chave de posicionamento nas instruções DML para especificar em qual partição os dados da linha estão. Se você criar tabelas que não são de posicionamento no banco de dados, o Spanner armazena esses dados na partição padrão.

Para instruções sobre como usar partições, consulte Criar e gerenciar partições.

Considerações importantes

Considere o seguinte antes de criar suas partições, posições e tabelas de posicionamento:

  • Local da partição: selecione cuidadosamente as regiões de partição que fornecem a mais benefícios para seu aplicativo.

    É possível criar partições em uma instância com uma instância regional do Terraform, recomendamos que você crie partições em uma instância com um configuração de instância multirregional, para que o local da partição padrão seja em uma configuração multirregional.

    Além disso, selecione um local de partição padrão multirregional que tenha regiões somente leitura e leitura que abrangem todas as jurisdições necessárias pelo seu aplicativo. Em seguida, crie outras partições (que podem ser regionais) com regiões líderes que correspondem às regiões na partição padrão de várias regiões.

  • Número de partições: muitas partições podem gerar sobrecarga algumas podem não oferecer benefícios suficientes. É possível criar, no máximo, 10 partições diferentes por instância.

Limitações

As limitações a seguir se aplicam à versão de pré-lançamento e estão sujeitas a alterações ou remoção após a versão de GA ou depois:

  • Não é possível criar uma partição de instância usando uma configuração birregional.
  • Para cada partição, a capacidade de computação precisa ser de pelo menos um nó (1.000 unidades de processamento).
  • Para uma determinada instância, não é possível criar mais de uma partição de instância que usa a mesma configuração de instância de base. Por exemplo, em test-instance, não é possível criar duas partições, partition-1 e partition-2, que usam us-central1 como a configuração da partição.
  • Para cada nó da partição, é possível colocar, no máximo, 100 milhões linhas de veiculação. Você pode ver o número de linhas de veiculação que foram colocados em cada uma das partições na página "Partições" do console do Google Cloud.
  • Para cada nó na partição da instância de destino, o Spanner pode mover cerca de 10 linhas de posicionamento por segundo.
  • Não é possível criar partições em instâncias de teste gratuito ou instâncias de tamanho granular menores que um nó (1.000 unidades de processamento).
  • Não é possível criar backups para instâncias com partições.
  • Não é possível usar chaves de criptografia gerenciadas pelo cliente em instâncias com partições.
  • Não é possível criar partições de instância em uma instância com o autoescalador gerenciado ativado.
  • Não é possível mover a partição para uma configuração de instância diferente.
  • Não é possível mover uma instância que tenha partições. É possível mover linhas individuais em partições diferentes, assim você não precisa mover a instância.
  • O uso de partições não garante compliance e requisitos regulamentares.
  • Os fluxos de alterações não são compatíveis com dados particionados.
  • Para usar o particionamento geográfico, você precisa criar um novo banco de dados vazio e definir o Opção opt_in_dataplacement_preview para true. Para mais informações, consulte Criar e gerenciar partições.
  • Se você usar uma instrução DML INSERT ou DELETE para uma tabela de posicionamento, deve ser a única instrução na transação.

Controle de acesso com o IAM

É preciso ter o spanner.instancePartitions.create, spanner.instancePartitions.update e spanner.instancePartitions.delete permissões para criar e gerenciar partições. Se você só precisa visualizar as partições, é necessário ter a permissão spanner.instancePartitions.list ou spanner.instancePartitions.get. Para mais informações, consulte Visão geral do IAM.

Para informações sobre como conceder permissões do IAM do Spanner, consulte Aplicar permissões do IAM.

Monitoramento

O Spanner fornece várias métricas para ajudar a monitorar as partições. Depois de criar uma partição adicional, um filtro suspenso para Partições será mostrado na página "Insights do sistema" no console do Google Cloud. A seleção padrão é mostrar métricas Todas as partições. Use o menu suspenso para filtrar as métricas de uma partição específica.

Para saber mais sobre como monitorar seus recursos do Spanner, consulte Monitore instâncias com o Cloud Monitoring.

Preços

Não há cobrança extra pelo uso da segmentação geográfica. Você vai receber a cobrança padrão do Spanner pela quantidade de capacidade de computação que a instância usa e pela quantidade de armazenamento que o banco de dados usa.

Para mais informações, consulte Preços do Spanner.

A seguir