Esta página descreve como criar e gerir grupos de localidades do Spanner. Pode usar grupos de localidades para definir a política de armazenamento hierárquico para dados no esquema da base de dados. Para obter informações sobre como funciona o armazenamento hierárquico, consulte o artigo Armazenamento hierárquico.
Crie um grupo de localidades
Pode criar um grupo de localidades sem qualquer política de armazenamento hierárquico ou pode criar um grupo de localidades para definir a política de armazenamento para dados no esquema da sua base de dados.
Se criar um grupo de localidades sem uma política de armazenamento hierarquizado, o grupo de localidades herda a política de armazenamento hierarquizado do grupo de localidades default
. Se não tiver definido manualmente a política de armazenamento do grupo de localidades default
, a política de armazenamento é definida apenas para SSD.
Consola
Aceda à página Instances do Spanner na Google Cloud consola.
Selecione a instância na qual quer usar o armazenamento hierárquico.
Selecione a base de dados na qual quer usar o armazenamento hierárquico.
No menu de navegação, clique em Spanner Studio.
Na página Spanner Studio, clique em
Novo separador ou use o separador do editor vazio.Introduza a declaração
CREATE LOCALITY GROUP
DDL usando o GoogleSQL ou o PostgreSQL.Por exemplo, pode executar o seguinte comando para criar um grupo de localidades,
separate_storage
, que armazena colunas num ficheiro separado dos dados para o resto das colunas:GoogleSQL
CREATE LOCALITY GROUP separate_storage;
PostgreSQL
CREATE LOCALITY GROUP separate_storage;
Por exemplo, pode executar o seguinte comando para criar um grupo de localidades,
ssd_only
, que armazena dados no armazenamento SSD:GoogleSQL
CREATE LOCALITY GROUP ssd_only OPTIONS (storage='ssd');
PostgreSQL
CREATE LOCALITY GROUP ssd_only STORAGE 'ssd';
Por exemplo, pode executar o seguinte comando para criar um grupo de localidades,
hdd_only
, que armazena dados no armazenamento de HDD:GoogleSQL
CREATE LOCALITY GROUP hdd_only OPTIONS (storage='hdd');
PostgreSQL
CREATE LOCALITY GROUP hdd_only STORAGE 'hdd';
Clique em Executar.
gcloud
Para criar um grupo de localidades com o comando da CLI gcloud, use
gcloud spanner databases ddl update
.
Por exemplo, pode executar o seguinte comando para criar um grupo de localidades, separate_storage
, que armazena colunas num ficheiro separado dos dados para o resto das colunas:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP separate_storage"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP separate_storage"
Por exemplo, pode executar o seguinte comando para criar um grupo de localidades,
ssd_only
, que armazena dados no SSD:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP ssd_only OPTIONS (storage='ssd')"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP ssd_only STORAGE 'ssd'"
Por exemplo, pode executar o seguinte comando para criar um grupo de localidades, hdd_only
, que armazena dados no armazenamento de HDD:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP hdd_only OPTIONS (storage='hdd')"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP hdd_only STORAGE 'hdd'"
Crie uma política baseada na idade para um grupo de localidades
Um grupo de localidades com uma política baseada na antiguidade armazena dados mais recentes no armazenamento SSD durante um período especificado. Após o tempo especificado, o Spanner migra os dados para o armazenamento em HDD durante o ciclo de compactação normal, que ocorre normalmente ao longo de sete dias a partir do tempo especificado. Quando usa uma política de armazenamento hierarquizada baseada na antiguidade, o período mínimo durante o qual os dados têm de ser armazenados no SSD antes de serem movidos para o armazenamento no HDD é de uma hora.
Para criar um grupo de localidades baseado na idade, use a declaração CREATE LOCALITY GROUP
DDL.
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a declaração
CREATE LOCALITY GROUP
DDL usando o GoogleSQL ou o PostgreSQL.Por exemplo, a seguinte declaração DDL cria um grupo de localidades,
spill_to_hdd
, que armazena dados no armazenamento SSD durante os primeiros 10 dias, e, em seguida, migra os dados mais antigos para o armazenamento HDD durante o ciclo de compactação normal:GoogleSQL
CREATE LOCALITY GROUP spill_to_hdd OPTIONS (storage = 'ssd', ssd_to_hdd_spill_timespan = '10d');
PostgreSQL
CREATE LOCALITY GROUP spill_to_hdd STORAGE 'ssd' SSD_TO_HDD_SPILL_TIMESPAN '10d';
Clique em Executar.
gcloud
Para criar um grupo de localidades baseado na idade com o comando da CLI gcloud,
use gcloud spanner databases ddl update
.
Por exemplo, a seguinte declaração DDL cria um grupo de localidades
spill_to_hdd
que armazena dados em SSD durante os primeiros 10 dias e, em seguida, migra os dados mais antigos para HDD durante o ciclo de compactação normal.
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP spill_to_hdd OPTIONS (storage='ssd', ssd_to_hdd_spill_timespan='10d')"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE LOCALITY GROUP spill_to_hdd STORAGE 'ssd' SSD_TO_HDD_SPILL_TIMESPAN '10d'"
Defina uma política de armazenamento hierarquizada para os seus dados
Depois de criar o grupo de localidades, pode definir a política de armazenamento hierarquizado para os seus dados. A política de armazenamento hierárquico determina o grupo de localidades que os dados usam. Pode definir a política de armazenamento hierárquico ao nível da base de dados, da tabela, da coluna ou do índice secundário. Cada objeto de base de dados herda a respetiva política de armazenamento hierarquizado do respetivo elemento principal, a menos que seja substituída explicitamente.
Se criar um grupo de localidades sem uma política de armazenamento hierarquizado, o grupo de localidades herda a política de armazenamento hierarquizado do grupo de localidades default
. Se não tiver definido manualmente a política de armazenamento do grupo de localidades default
, a política de armazenamento é definida apenas para SSD.
Defina um grupo de localidades ao nível da base de dados
A política de armazenamento hierarquizado predefinida é que todos os dados são armazenados no armazenamento SSD. Pode alterar a política de armazenamento hierarquizado ao nível da base de dados alterando o default
grupo de localidade. Para bases de dados com dialeto GoogleSQL, a sua declaração DDL tem de ter default
entre acentos graves (`default`
). Só tem de incluir os acentos graves para o grupo de localidades default
.ALTER LOCALITY GROUP
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a declaração
ALTER LOCALITY GROUP
DDL usando o GoogleSQL ou o PostgreSQL.Por exemplo, as seguintes declarações LDD alteram o grupo de localidade
default
para usar uma política de armazenamento hierárquica baseada na idade. Todos os dados na base de dados são movidos para o armazenamento no disco rígido após 10 dias.GoogleSQL
ALTER LOCALITY GROUP `default` SET OPTIONS (storage = 'ssd', ssd_to_hdd_spill_timespan = '10d');
PostgreSQL
ALTER LOCALITY GROUP "default" STORAGE 'ssd' SSD_TO_HDD_SPILL_TIMESPAN '10d';
Clique em Executar.
gcloud
Para alterar a política de armazenamento hierarquizado do grupo de localidades default
com o comando da CLI gcloud, use gcloud spanner databases ddl update
.
Por exemplo, as seguintes declarações LDD alteram o grupo de localidade default
para usar uma política de armazenamento hierárquica baseada na idade. Todos os dados na base de dados são movidos para o armazenamento no disco rígido após 10 dias.
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP \`default\` SET OPTIONS (storage = 'ssd', ssd_to_hdd_spill_timespan = '10d');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP \"default\" STORAGE 'ssd' SSD_TO_HDD_SPILL_TIMESPAN '10d';"
Defina um grupo de localidades ao nível da tabela
Pode definir uma política de armazenamento hierarquizado ao nível da tabela para os seus dados que substitui a política de armazenamento hierarquizado ao nível da base de dados. A política de armazenamento hierarquizado ao nível da tabela também se aplica a todas as colunas da tabela, a menos que tenha definido uma política de armazenamento hierarquizado de substituição ao nível da coluna.
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a declaração
CREATE TABLE
DDL usando o GoogleSQL ou o PostgreSQL.Por exemplo, as seguintes declarações DDL criam uma tabela,
Singers
, que usa o grupo de localidadesssd_only
:GoogleSQL
CREATE TABLE Singers ( SingerId INT64 NOT NULL, FirstName STRING(1024), LastName STRING(1024), SingerInfo BYTES(MAX) ) PRIMARY KEY (SingerId), OPTIONS (locality_group = 'ssd_only');
PostgreSQL
CREATE TABLE Singers ( SingerId bigint PRIMARY KEY, FirstName varchar(1024), LastName varchar(1024), SingerInfo bytea ) LOCALITY GROUP ssd_only;
Clique em Executar.
gcloud
Para definir uma política de armazenamento hierárquico ao nível da tabela com o comando da CLI gcloud, use gcloud spanner databases ddl update
.
Por exemplo, as seguintes declarações DDL criam uma tabela, Singers
, que usa o grupo de localidades ssd_only
.
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Singers ( SingerId INT64 NOT NULL, \
FirstName STRING(1024), \
LastName STRING(1024), \
SingerInfo BYTES(MAX) \
) PRIMARY KEY (SingerId), OPTIONS (locality_group = 'ssd_only');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Singers ( \
SingerId bigint PRIMARY KEY, \
FirstName varchar(1024), \
LastName varchar(1024), \
SingerInfo bytea \
) LOCALITY GROUP ssd_only;"
Defina uma política de armazenamento hierarquizado de substituição ao nível da coluna
Pode definir uma política de armazenamento hierarquizada de substituição ao nível da coluna para os seus dados.
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a declaração
CREATE TABLE
DDL com uma substituição ao nível da coluna da política de armazenamento hierarquizado através do GoogleSQL ou do PostgreSQL.Por exemplo, as seguintes declarações DDL criam uma tabela
Singers
que usa o grupo de localidadesssd_only
. No entanto, a colunaAwards
substitui este grupo de localidades ao nível da tabela e usa o grupo de localidadesspill_to_hdd
como política de armazenamento hierárquico:GoogleSQL
CREATE TABLE Singers ( SingerId INT64 NOT NULL, FirstName STRING(1024), LastName STRING(1024), Awards ARRAY<STRING(MAX)> OPTIONS (locality_group = 'spill_to_hdd') ) PRIMARY KEY (SingerId), OPTIONS (locality_group = 'ssd_only');
PostgreSQL
CREATE TABLE Singers ( SingerId bigint PRIMARY KEY, FirstName varchar(1024), LastName varchar(1024), Awards varchar[] LOCALITY GROUP spill_to_hdd ) LOCALITY GROUP ssd_only;
Clique em Executar.
gcloud
Para definir uma política de armazenamento hierarquizado de substituição ao nível da coluna com o comando da CLI gcloud, use gcloud spanner databases ddl update
.
Por exemplo, as seguintes declarações DDL criam uma tabela Singers
que usa o grupo de localidades ssd_only
. No entanto, a coluna Awards
substitui esta política de armazenamento hierarquizado ao nível da tabela e usa o grupo de localidades spill_to_hdd
como política de armazenamento hierarquizado:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Singers ( \
SingerId INT64 NOT NULL, \
FirstName STRING(1024), \
LastName STRING(1024), \
Awards ARRAY<STRING(MAX)> OPTIONS (locality_group = 'spill_to_hdd') \
) PRIMARY KEY (SingerId), OPTIONS (locality_group = 'ssd_only');" \
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Singers ( \
SingerId bigint PRIMARY KEY, \
FirstName varchar(1024), \
LastName varchar(1024), \
Awards varchar[] LOCALITY GROUP spill_to_hdd \
) LOCALITY GROUP ssd_only;"
Defina uma política de armazenamento hierarquizada de substituição ao nível do índice secundário
Pode definir uma política de armazenamento hierarquizada de substituição ao nível do índice secundário para os seus dados.
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a
CREATE INDEX
declaração DDL com uma política de armazenamento hierarquizado de substituição ao nível do índice secundário através do GoogleSQL ou do PostgreSQL.Por exemplo, as seguintes declarações DDL criam uma tabela
Singers
que usa o grupo de localidadesssd_only
. A base de dados também tem um índice secundário em todos osSingers
na base de dados pelo respetivo nome próprio e apelido. O índiceSingersByFirstLastName
substitui a política de armazenamento hierarquizado ao nível da tabela e usa o grupo de localidadespill_to_hdd
como política de armazenamento hierarquizado:GoogleSQL
CREATE INDEX SingersByFirstLastName ON Singers(FirstName, LastName) OPTIONS (locality_group = 'spill_to_hdd');
PostgreSQL
CREATE INDEX SingersByFirstLastName ON Singers(FirstName, LastName) LOCALITY GROUP spill_to_hdd;
Clique em Executar.
gcloud
Para definir uma política de armazenamento hierarquizado de substituição ao nível do índice com o comando da CLI gcloud, use gcloud spanner databases ddl update
.
Por exemplo, as seguintes declarações DDL criam uma tabela Singers
que usa o grupo de localidades ssd_only
. A base de dados também cria um índice secundário em todos os Singers
na base de dados pelo nome próprio e apelido. O índice SingersByFirstLastName
substitui a política de armazenamento hierarquizado ao nível da tabela e usa o grupo de localidade spill_to_hdd
como política de armazenamento hierarquizado:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE INDEX SingersByFirstLastName ON Singers(FirstName, LastName) \
OPTIONS (locality_group = 'spill_to_hdd');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE INDEX SingersByFirstLastName ON Singers(FirstName, LastName) \
LOCALITY GROUP spill_to_hdd;"
Defina um grupo de localidades ao nível da coluna
Pode definir um grupo de localidade ao nível da coluna para os seus dados, mesmo que o grupo de localidade não tenha uma política de armazenamento hierarquizada. A leitura de dados desta coluna é mais rápida do que a leitura de dados agrupados com outras colunas.
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a declaração
CREATE TABLE
DDL que atribui a coluna a um grupo de localidades através do GoogleSQL ou do PostgreSQL.Por exemplo, as seguintes declarações DDL criam uma tabela
Songs
com uma colunaLyricsCompressed
que é armazenada separadamente no grupo de localidadeshdd_only
:GoogleSQL
CREATE TABLE Songs ( SingerId INT64 NOT NULL, SongId INT64 NOT NULL, Title STRING(MAX), Description STRING(MAX), LyricsCompressed BYTES(MAX) OPTIONS (locality_group = 'hdd_only') ) PRIMARY KEY (SingerId, SongId), INTERLEAVE IN PARENT Singers ON DELETE CASCADE, OPTIONS (locality_group = 'ssd_only');
PostgreSQL
CREATE TABLE Songs ( SingerId BIGINT NOT NULL, SongId BIGINT NOT NULL, Title VARCHAR, Description TEXT, LyricsCompressed BYTEA LOCALITY GROUP hdd_only, PRIMARY KEY (SingerId, SongId) ) LOCALITY GROUP ssd_only INTERLEAVE IN PARENT Singers ON DELETE CASCADE;
Clique em Executar.
gcloud
Para definir um grupo de localidades ao nível da coluna para os seus dados com o comando da CLI gcloud, use gcloud spanner databases ddl update
.
Por exemplo, as seguintes declarações DDL criam uma tabela Songs
com uma coluna LyricsCompressed
que é armazenada separadamente no grupo de localidades hdd_only
:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Songs ( \
SingerId INT64 NOT NULL, \
SongId INT64 NOT NULL, \
Title STRING(MAX), \
Description STRING(MAX),
LyricsCompressed BYTES(MAX) OPTIONS (locality_group = 'hdd_only') \
) PRIMARY KEY (SingerId, SongId), \
INTERLEAVE IN PARENT Singers ON DELETE CASCADE, \
OPTIONS (locality_group = 'ssd_only');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="CREATE TABLE Songs ( \
SingerId BIGINT NOT NULL, \
SongId BIGINT NOT NULL, \
Title VARCHAR, \
Description TEXT, \
LyricsCompressed BYTEA LOCALITY GROUP hdd_only, \
PRIMARY KEY (SingerId, SongId) \
) LOCALITY GROUP ssd_only INTERLEAVE IN PARENT Singers ON DELETE CASCADE;
Mova dados entre opções de armazenamento
Pode mover dados entre o armazenamento SSD e HDD. A movimentação de dados pode demorar até sete dias. Pode monitorizar o progresso da mudança consultando a tabela
SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
incorporada para verificar a utilização do armazenamento de HDD e SSD
para cada tabela na sua base de dados. Também pode monitorizar a utilização do armazenamento através da métrica spanner.googleapis.com/instance/storage/used_bytes
do Cloud Monitoring para mostrar a discriminação de SSD e HDD para a sua base de dados ou instância. Para mais informações, consulte a
observabilidade do armazenamento hierárquico.
Mova dados do armazenamento SSD para o armazenamento HDD
Para mover dados do armazenamento SSD para o armazenamento HDD, pode criar um novo grupo de localidades com uma política de armazenamento hierarquizada baseada na antiguidade ou alterar a política de armazenamento hierarquizada de um grupo de localidades existente. O Spanner move os dados durante o seu ciclo de compactação normal, que ocorre normalmente ao longo de sete dias. Se estiver a carregar dados e a atualizar o seu grupo de localidades através de uma das seguintes declarações DDL, tem de aguardar até sete dias para que a alteração ao grupo de localidades seja concluída:ALTER
GoogleSQL
ALTER TABLE ... SET OPTIONS (locality_group = '')
ALTER TABLE ... ALTER COLUMN ... SET OPTIONS (locality_group = '')
ALTER INDEX ... SET OPTIONS (locality_group = '')
PostgreSQL
ALTER TABLE ... SET LOCALITY GROUP ...
ALTER TABLE ... ALTER COLUMN ... SET LOCALITY GROUP ...
ALTER INDEX ... SET LOCALITY GROUP ...
O período de espera não se aplica se estiver a criar uma nova tabela, coluna ou índice e a adicionar o grupo de localidades como parte da sintaxe CREATE
ou ADD COLUMN
.
Para mais informações, consulte os artigos Crie uma política baseada na idade para um grupo de localidades ou Altere a opção de armazenamento.
Mova dados do armazenamento HDD para SSD
Para mover dados do armazenamento de HDD para SSD, pode alterar a opção de armazenamento
de um grupo de localidades existente ou alterar o grupo de localidades usado pela tabela.
O Spanner move os dados durante o respetivo ciclo de compactação normal, que
ocorre normalmente ao longo de sete dias. Se estiver a carregar dados e a atualizar o seu grupo de localidades através de uma das seguintes ALTER
declarações DDL, tem de aguardar até sete dias para que a alteração ao grupo de localidades seja concluída:
GoogleSQL
ALTER TABLE ... SET OPTIONS (locality_group = '')
ALTER TABLE ... ALTER COLUMN ... SET OPTIONS (locality_group = '')
ALTER INDEX ... SET OPTIONS (locality_group = '')
PostgreSQL
ALTER TABLE ... SET LOCALITY GROUP ...
ALTER TABLE ... ALTER COLUMN ... SET LOCALITY GROUP ...
ALTER INDEX ... SET LOCALITY GROUP ...
O período de espera não se aplica se estiver a criar uma nova tabela, coluna ou índice e a adicionar o grupo de localidades como parte da sintaxe CREATE
ou ADD COLUMN
.
Altere o grupo de localidades usado por uma tabela
Pode alterar o grupo de localidades usado por uma tabela definindo um grupo de localidades novo ou diferente nas opções da tabela.
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a declaração
ALTER TABLE
DDL que altera o grupo de localidades usado pela tabela através do GoogleSQL ou do PostgreSQL.Por exemplo, as seguintes declarações LDD alteram o grupo de localidade usado pela tabela,
Singers
, paraspill_to_hdd
:GoogleSQL
ALTER TABLE Singers SET OPTIONS (locality_group = 'spill_to_hdd');
PostgreSQL
ALTER TABLE Singers SET LOCALITY GROUP spill_to_hdd;
Clique em Executar.
gcloud
Para alterar o grupo de localidades usado por uma tabela com o comando da CLI gcloud, use gcloud spanner databases ddl update
.
Por exemplo, as seguintes declarações LDD alteram o grupo de localidade usado pela tabela, Singers
, para spill_to_hdd
:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER TABLE Singers SET OPTIONS(locality_group = 'spill_to_hdd');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER TABLE Singers SET LOCALITY GROUP spill_to_hdd;"
Altere o grupo de localidades usado pela coluna de uma tabela
Pode alterar o grupo de localidades usado pela coluna de uma tabela definindo o grupo de localidades nas opções da coluna.
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a declaração
ALTER TABLE
DDL que altera o grupo de localidades usado pela tabela através do GoogleSQL ou do PostgreSQL.Por exemplo, as seguintes declarações DDL alteram o grupo de localidades usado pela coluna da tabela,
LastName
, paraspill_to_hdd
:GoogleSQL
ALTER TABLE Singers ALTER COLUMN LastName SET OPTIONS(locality_group = 'spill_to_hdd');
PostgreSQL
ALTER TABLE Singers ALTER COLUMN LastName SET LOCALITY GROUP spill_to_hdd;
Clique em Executar.
gcloud
Para alterar o grupo de localidades usado por uma tabela com o comando da CLI gcloud, use gcloud spanner databases ddl update
.
Por exemplo, as seguintes declarações DDL alteram o grupo de localidades usado pela coluna da tabela, LastName
, para spill_to_hdd
:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER TABLE Singers ALTER COLUMN LastName SET OPTIONS(locality_group = 'spill_to_hdd');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER TABLE Singers ALTER COLUMN SET LOCALITY GROUP spill_to_hdd;"
Altere um grupo de localidades
Pode alterar um grupo de localidades alterando a respetiva opção de armazenamento
ou alterando a respetiva política baseada na idade.
O Spanner move os dados durante o respetivo ciclo de compactação normal, que
ocorre normalmente ao longo de sete dias. Se estiver a carregar dados e a atualizar o grupo de localidades através de ALTER LOCALITY GROUP
, tem de aguardar até sete dias para que os dados existentes sejam migrados. A definição atualizada aplica-se a todos os novos dados escritos nesse grupo de localidades imediatamente.
Altere a opção de armazenamento
Pode alterar a opção de armazenamento de um grupo de localidades de SSD para HDD ou de HDD para SSD.
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a declaração
ALTER LOCALITY GROUP
DDL usando o GoogleSQL ou o PostgreSQL.Por exemplo, as seguintes declarações DDL alteram a opção de armazenamento do grupo de localidades,
separate_storage
, para HDD:GoogleSQL
ALTER LOCALITY GROUP separate_storage SET OPTIONS (storage='hdd');
PostgreSQL
ALTER LOCALITY GROUP separate_storage STORAGE 'hdd';
Clique em Executar.
gcloud
Para alterar a opção de armazenamento de um grupo de localidades com o comando da CLI gcloud, use gcloud spanner databases ddl update
.
Por exemplo, as seguintes declarações DDL alteram a opção de armazenamento do grupo de localidades, separate_storage
, para HDD:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP separate_storage SET OPTIONS (storage = 'hdd');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP separate_storage STORAGE 'hdd';"
Altere a política baseada na idade
Pode alterar a política baseada na idade de um grupo de localidades, prolongando ou reduzindo o tempo que os dados são armazenados no SSD antes de serem movidos para o armazenamento HDD.
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a declaração
ALTER LOCALITY GROUP
DDL usando o GoogleSQL ou o PostgreSQL.Por exemplo, as seguintes declarações DDL alteram a política baseada na idade do grupo de localidades,
spill_to_hdd
, prolongando o período durante o qual os dados são armazenados no SSD para 20 dias:GoogleSQL
ALTER LOCALITY GROUP spill_to_hdd SET OPTIONS (ssd_to_hdd_spill_timespan = '20d');
PostgreSQL
ALTER LOCALITY GROUP spill_to_hdd SSD_TO_HDD_SPILL_TIMESPAN '20d';
Clique em Executar.
gcloud
Para alterar a política baseada na idade de um grupo de localidades com o comando da CLI gcloud, use gcloud spanner databases ddl update
.
Por exemplo, as seguintes declarações DDL alteram a política baseada na idade do grupo de localidades, spill_to_hdd
, prolongando o período durante o qual os dados são armazenados no SSD para 20 dias:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP spill_to_hdd SET OPTIONS (ssd_to_hdd_spill_timespan = '20d');"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="ALTER LOCALITY GROUP spill_to_hdd SSD_TO_HDD_SPILL_TIMESPAN '20d';"
Elimine um grupo de localidades
Não pode eliminar um grupo de localidades se este contiver dados. Primeiro, tem de mover todos os dados que estão no grupo de localidades para outro grupo de localidades. Para mais informações, consulte o artigo Altere o grupo de localidades usado pela tabela.
Consola
- Na página Spanner Studio, clique em Novo separador ou use o separador do editor vazio.
Introduza a declaração
DROP LOCALITY GROUP
DDL usando o GoogleSQL ou o PostgreSQL.Por exemplo, pode executar o seguinte para eliminar um grupo de localidades
ssd_only
:GoogleSQL
DROP LOCALITY GROUP ssd_only;
PostgreSQL
DROP LOCALITY GROUP ssd_only;
Clique em Executar.
gcloud
Para eliminar um grupo de localidades com o comando da CLI gcloud, use
gcloud spanner databases ddl update
.
Por exemplo, para eliminar o grupo de localidades ssd_only
, execute:
GoogleSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="DROP LOCALITY GROUP ssd_only"
PostgreSQL
gcloud spanner databases ddl update example-db \
--instance=test-instance \
--ddl="DROP LOCALITY GROUP ssd_only"
O que se segue?
- Saiba mais sobre o armazenamento em camadas.
- Saiba mais acerca dos grupos de localidades.
- Saiba mais sobre a otimização de consultas com o pushdown de predicados de data/hora.