Visão geral do 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 personalizadas, 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 os seguintes:

  • Reduz a latência de gravação e de leitura forte, permitindo armazenar os dados em na mesma localização geográfica da consulta.

  • Otimização de 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: particionar geograficamente dados relacionados ao usuário para processar e armazenar dados na região mais próxima do usuário.

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

Como funciona o particionamento geográfico

Todas as instâncias do Spanner têm uma partição principal que é chamou a partição default. Se você não criar partições adicionais, todas os objetos de banco de dados são armazenados na partição padrão, que está no mesmo como 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 (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. Depois, criar posições no banco de dados que sejam associadas à partição. Por fim, você pode criar tabelas de posições. que tenham um atributo de chave de posicionamento. É preciso usar a chave de veiculação no 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 partições adicionais (que podem ser regional) com regiões líderes que correspondem às regiões na multirregião partição padrão.

  • 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

O particionamento geográfico tem as seguintes limitações:

  • O particionamento geográfico não oferece suporte aos bancos de dados do dialeto PostgreSQL.
  • 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, dentro de test-instance, não é possível criar duas partições, partition-1 e partition-2, que usam us-central1 como configuração de partição.
  • Para cada nó da partição, é possível colocar no máximo 20 milhões de linhas. Você pode ver o número de linhas que foram colocadas em cada um de seus partições na página "Partições" do console do Google Cloud.
  • Para cada nó na partição de instâncias de destino, o Spanner mover cerca de 10 linhas de veiculação 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 para instâncias com partições diferentes.
  • Não é possível criar partições de instância em uma instância com escalonador automático 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.
  • O uso de partições não garante segurança, conformidade e regulamentação e cumprimento de requisitos regulatórios.
  • 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 posições de dados.
  • 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 partições diferentes, é preciso ter a permissão spanner.instancePartitions.list ou spanner.instancePartitions.get. Para mais informações, consulte Visão geral do IAM.

Para mais informações sobre como conceder permissões do IAM no Spanner, consulte Aplique permissões do IAM.

Monitoramento

O Spanner oferece várias métricas para ajudar você a monitorar partições diferentes. Depois de criar outra partição, você verá uma filtro suspenso adicional para Partições nos insights do sistema no console do Google Cloud. A seleção padrão é mostrar métricas Todas as partições. Você pode usar o menu suspenso para filtrar as métricas para um determinado partição.

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

Preços

Não há custo extra pelo uso do particionamento geográfico. Você vai receber a cobrança de os preços padrão do Spanner de acordo com a capacidade de computação sua instância e a quantidade de armazenamento que seu banco de dados usa.

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

A seguir