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çãoasia-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
epartition-2
, que usamus-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
paratrue
. Para mais informações, consulte Criar e gerenciar posições de dados. - Se você usar uma instrução DML
INSERT
ouDELETE
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
- Saiba como criar e gerenciar partições.
- Saiba como Criar e gerenciar posições de dados.