Questa pagina descrive come creare e gestire i gruppi di località di Spanner. Puoi utilizzare i gruppi di località per definire la policy di archiviazione a livelli per i dati nello schema del database. Per informazioni su come funziona l'archiviazione a livelli, consulta Archiviazione a livelli.
Crea un gruppo di località
Puoi creare un gruppo di località senza alcuna policy di archiviazione a livelli oppure puoi creare un gruppo di località per definire la policy di archiviazione per i dati nello schema del database.
Se crei un gruppo di località senza una policy di archiviazione a livelli, il gruppo di località eredita la policy di archiviazione a livelli del gruppo di località default. Se non hai impostato manualmente la policy di archiviazione del gruppo di località default, la policy di archiviazione è impostata su Solo SSD.
Console
Vai alla pagina Istanze di Spanner nella consoleGoogle Cloud .
Seleziona l'istanza in cui vuoi utilizzare l'archiviazione a livelli.
Seleziona il database in cui vuoi utilizzare l'archiviazione a livelli.
Nel menu di navigazione, fai clic su Spanner Studio.
Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
CREATE LOCALITY GROUPutilizzando GoogleSQL o PostgreSQL.Ad esempio, puoi eseguire il comando seguente per creare un gruppo di località,
separate_storage, che archivia le colonne in un file separato rispetto ai dati per il resto delle colonne:GoogleSQL
CREATE LOCALITY GROUP separate_storage;PostgreSQL
CREATE LOCALITY GROUP separate_storage;Ad esempio, puoi eseguire il comando seguente per creare un gruppo di località,
ssd_only, che archivia i dati su uno spazio di archiviazione SSD:GoogleSQL
CREATE LOCALITY GROUP ssd_only OPTIONS (storage='ssd');PostgreSQL
CREATE LOCALITY GROUP ssd_only STORAGE 'ssd';Ad esempio, puoi eseguire il comando seguente per creare un gruppo di località,
hdd_only, che archivia i dati su uno spazio di archiviazione HDD:GoogleSQL
CREATE LOCALITY GROUP hdd_only OPTIONS (storage='hdd');PostgreSQL
CREATE LOCALITY GROUP hdd_only STORAGE 'hdd';Fai clic su Esegui.
gcloud
Per creare un gruppo di località con il comando Google Cloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, puoi eseguire il comando seguente per creare un gruppo di località, separate_storage, che archivia le colonne in un file separato rispetto ai dati per il resto delle colonne:
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"
Ad esempio, puoi eseguire il comando seguente per creare un gruppo di località, ssd_only, che archivia i dati su 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'"
Ad esempio, puoi eseguire il comando seguente per creare un gruppo di località, hdd_only, che archivia i dati su uno spazio di archiviazione 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'"
Crea una policy basata sull'età per un gruppo di località
Un gruppo di località con una policy basata sull'età archivia i dati più recenti nello spazio di archiviazione SSD per un periodo di tempo specificato. Questo tempo è relativo al timestamp di commit dei dati. Trascorso il tempo specificato, Spanner esegue la migrazione dei dati allo spazio di archiviazione HDD durante il normale ciclo di compattazione, che in genere avviene nel corso di sette giorni dal momento specificato. Quando utilizzi una policy di archiviazione a livelli basata sull'età, il periodo di tempo minimo per cui i dati devono essere archiviati nell'SSD prima di essere spostati nello spazio di archiviazione HDD è di un'ora.
Per creare un gruppo di località basato sull'età, utilizza l'istruzione DDL CREATE LOCALITY GROUP.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
CREATE LOCALITY GROUPutilizzando GoogleSQL o PostgreSQL.Ad esempio, la seguente istruzione DDL crea un gruppo di località,
spill_to_hdd, che archivia i dati nello spazio di archiviazione SSD per i primi 10 giorni, quindi esegue la migrazione dei dati meno recenti allo spazio di archiviazione HDD nel normale ciclo di compattazione: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';Fai clic su Esegui.
gcloud
Per creare un gruppo di località basato sull'età con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, la seguente istruzione DDL crea un gruppo di località spill_to_hdd che archivia i dati in SSD per i primi 10 giorni, quindi esegue la migrazione dei dati meno recenti in HDD durante il normale ciclo di compattazione.
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'"
Imposta una policy di archiviazione a livelli per i tuoi dati
Dopo aver creato il gruppo di località, puoi impostare la policy di archiviazione a livelli per i tuoi dati. La policy di archiviazione a livelli determina il gruppo di località utilizzato dai dati. Puoi impostare la policy di archiviazione a livelli a livello di database, tabella, colonna o indice secondario. Ogni oggetto del database eredita la policy di archiviazione a livelli dall'oggetto principale, a meno che non venga eseguito l'override esplicito.
Se crei un gruppo di località senza una policy di archiviazione a livelli, il gruppo di località eredita la policy di archiviazione a livelli del gruppo di località default. Se non hai impostato manualmente la policy di archiviazione del gruppo di località default, la policy di archiviazione è impostata su Solo SSD.
Imposta un gruppo di località a livello di database
La policy di archiviazione a livelli predefinita prevede che tutti i dati vengano archiviati su spazio di archiviazione SSD. Puoi modificare la policy di archiviazione a livelli a livello di database modificando il gruppo di località default. Per i database con dialetto GoogleSQL, l'istruzione DDL ALTER LOCALITY GROUP deve avere default tra apici inversi (`default`). Devi includere gli apici inversi solo per il gruppo di località default.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
ALTER LOCALITY GROUPutilizzando GoogleSQL o PostgreSQL.Ad esempio, le seguenti istruzioni DDL modificano il gruppo di località
defaultper utilizzare una policy di archiviazione a livelli basata sull'età. Tutti i dati nel database vengono spostati nello spazio di archiviazione HDD dopo 10 giorni.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';Fai clic su Esegui.
gcloud
Per modificare la policy di archiviazione a livelli del gruppo di località default con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, le seguenti istruzioni DDL modificano il gruppo di località default per utilizzare una policy di archiviazione a livelli basata sull'età. Tutti i dati nel database vengono spostati nello spazio di archiviazione HDD dopo 10 giorni.
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';"
Imposta un gruppo di località a livello di tabella
Puoi impostare una policy di archiviazione a livelli a livello di tabella per i tuoi dati che sostituisce la policy di archiviazione a livelli a livello di database. La policy di archiviazione a livelli a livello di tabella è applicabile anche a tutte le colonne della tabella, a meno che tu non abbia impostato una policy di archiviazione a livelli di override a livello di colonna.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
CREATE TABLEutilizzando GoogleSQL o PostgreSQL.Ad esempio, le seguenti istruzioni DDL creano una tabella,
Singers, che utilizza il gruppo di localitàssd_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;Fai clic su Esegui.
gcloud
Per impostare una policy di archiviazione a livelli a livello di tabella con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, le seguenti istruzioni DDL creano una tabella, Singers, che utilizza il gruppo di località 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;"
Imposta una policy di archiviazione a livelli di override a livello di colonna
Puoi impostare una policy di archiviazione a livelli con override a livello di colonna per i tuoi dati.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
CREATE TABLEcon un criterio di archiviazione a livelli di override a livello di colonna utilizzando GoogleSQL o PostgreSQL.Ad esempio, le seguenti istruzioni DDL creano una tabella
Singersche utilizza il gruppo di localitàssd_only. Tuttavia, la colonnaAwardsesegue l'override di questo gruppo di località a livello di tabella e utilizza il gruppo di localitàspill_to_hddcome policy di archiviazione a livelli: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;Fai clic su Esegui.
gcloud
Per impostare una policy di archiviazione a livelli con override a livello di colonna con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, le seguenti istruzioni DDL creano una tabella Singers che utilizza il gruppo di località ssd_only. Tuttavia, la colonna Awards esegue l'override di questa policy di archiviazione a livelli a livello di tabella e utilizza il gruppo di località spill_to_hdd come policy di archiviazione a livelli:
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;"
Imposta una policy di archiviazione a livelli di override a livello di indice secondario
Puoi impostare una policy di archiviazione a livelli di override secondaria a livello di indice per i tuoi dati.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
CREATE INDEXcon una policy di override dello spazio di archiviazione a livelli secondari utilizzando GoogleSQL o PostgreSQL.Ad esempio, le seguenti istruzioni DDL creano una tabella
Singersche utilizza il gruppo di localitàssd_only. Il database ha anche un indice secondario su tutti iSingersnel database in base al nome e al cognome. L'indiceSingersByFirstLastNameesegue l'override della policy di archiviazione a livelli a livello di tabella e utilizza il gruppo di localitàspill_to_hddcome policy di archiviazione a livelli: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;Fai clic su Esegui.
gcloud
Per impostare una policy di archiviazione a livelli con override a livello di indice secondario con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, le seguenti istruzioni DDL creano una tabella Singers che utilizza il gruppo di località ssd_only. Il database crea anche un indice secondario su tutti i Singers nel database in base al nome e al cognome. L'indice SingersByFirstLastName esegue l'override della policy di archiviazione a livelli a livello di tabella e utilizza il gruppo di località spill_to_hdd come policy di archiviazione a livelli:
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;"
Imposta un gruppo di località a livello di colonna
Puoi impostare un gruppo di località a livello di colonna per i tuoi dati anche se il gruppo di località non ha una policy di archiviazione a livelli. La lettura dei dati da questa colonna è più veloce rispetto alla lettura dei dati raggruppati con altre colonne.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
CREATE TABLEche assegna la colonna a un gruppo di località utilizzando GoogleSQL o PostgreSQL.Ad esempio, le seguenti istruzioni DDL creano una tabella
Songscon una colonnaLyricsCompressedarchiviata separatamente nel gruppo di localitàhdd_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;Fai clic su Esegui.
gcloud
Per impostare un gruppo di località a livello di colonna per i dati con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, le seguenti istruzioni DDL creano una tabella Songs con una colonna LyricsCompressed archiviata separatamente nel gruppo di località 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;
Sposta i dati tra le opzioni di archiviazione
Puoi spostare i dati tra lo spazio di archiviazione SSD e HDD. Il trasferimento dei dati può richiedere fino a sette giorni. Per eseguire più rapidamente la migrazione dei dati tra SSD e HDD, puoi attivare manualmente una compattazione principale.
Puoi monitorare l'avanzamento dello spostamento eseguendo una query sulla tabella SPANNER_SYS.TABLE_SIZES_STATS_1HOUR integrata per controllare l'utilizzo dello spazio di archiviazione HDD e SSD per ogni tabella del database. Puoi anche monitorare l'utilizzo dello spazio di archiviazione utilizzando la metrica spanner.googleapis.com/instance/storage/used_bytes di Cloud Monitoring per mostrare la suddivisione di SSD e HDD per il tuo database o la tua istanza. Per saperne di più, consulta Osservabilità dello spazio di archiviazione a livelli.
Sposta i dati dallo spazio di archiviazione SSD a quello HDD
Per spostare i dati dallo spazio di archiviazione SSD a quello HDD, puoi creare un nuovo gruppo di località con una policy di archiviazione a livelli basata sull'età o modificare la policy di archiviazione a livelli di un gruppo di località esistente. Spanner sposta i dati durante il normale ciclo di compattazione, che in genere avviene nel corso di sette giorni. Se carichi i dati e aggiorni il gruppo di località utilizzando una delle seguenti istruzioni DDL ALTER, devi attendere fino a sette giorni per il completamento della modifica al gruppo di località:
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 ...
Il periodo di attesa non è applicabile se crei una nuova tabella, colonna o indice e aggiungi il gruppo di località come parte della sintassi CREATE o ADD COLUMN.
Per saperne di più, consulta Crea una policy basata sull'età per un gruppo di località o Modifica l'opzione di archiviazione.
Sposta i dati dallo spazio di archiviazione HDD a quello SSD
Per spostare i dati dallo spazio di archiviazione HDD a quello SSD, puoi modificare l'opzione di archiviazione di un gruppo di località esistente o modificare il gruppo di località utilizzato dalla tabella.
Spanner sposta i dati durante il normale ciclo di compattazione, che
in genere si verifica nel corso di sette giorni. Se carichi i dati e aggiorni il gruppo di località utilizzando una delle seguenti istruzioni DDL ALTER, devi attendere fino a sette giorni per il completamento della modifica al gruppo di località:
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 ...
Il periodo di attesa non è applicabile se crei una nuova tabella, colonna o indice e aggiungi il gruppo di località come parte della sintassi CREATE o ADD COLUMN.
Modifica il gruppo di località utilizzato da una tabella
Puoi modificare il gruppo di località utilizzato da una tabella impostando un gruppo di località nuovo o diverso nelle opzioni della tabella.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
ALTER TABLEche modifica il gruppo di località utilizzato dalla tabella utilizzando GoogleSQL o PostgreSQL.Ad esempio, le seguenti istruzioni DDL modificano il gruppo di località utilizzato dalla tabella
Singersinspill_to_hdd:GoogleSQL
ALTER TABLE Singers SET OPTIONS (locality_group = 'spill_to_hdd');PostgreSQL
ALTER TABLE Singers SET LOCALITY GROUP spill_to_hdd;Fai clic su Esegui.
gcloud
Per modificare il gruppo di località utilizzato da una tabella con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, le seguenti istruzioni DDL modificano il gruppo di località utilizzato dalla tabella Singers in 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;"
Modifica il gruppo di località utilizzato dalla colonna di una tabella
Puoi modificare il gruppo di località utilizzato dalla colonna di una tabella impostando il gruppo di località nelle opzioni della colonna.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
ALTER TABLEche modifica il gruppo di località utilizzato dalla tabella utilizzando GoogleSQL o PostgreSQL.Ad esempio, le seguenti istruzioni DDL modificano il gruppo di località utilizzato dalla colonna della tabella,
LastName, inspill_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;Fai clic su Esegui.
gcloud
Per modificare il gruppo di località utilizzato da una tabella con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, le seguenti istruzioni DDL modificano il gruppo di località utilizzato dalla colonna della tabella, LastName, in 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;"
Modifica un gruppo di località
Puoi modificare un gruppo di località cambiando la relativa opzione di archiviazione
o cambiando la relativa policy basata sull'età.
Spanner sposta i dati durante il normale ciclo di compattazione, che
in genere si verifica nel corso di sette giorni. Se carichi i dati e aggiorni il gruppo di località utilizzando ALTER LOCALITY GROUP, devi attendere fino a sette giorni per la migrazione dei dati esistenti. L'impostazione aggiornata si applica immediatamente a tutti i nuovi dati scritti in quel gruppo di località.
Modifica l'opzione di archiviazione
Puoi modificare l'opzione di archiviazione di un gruppo di località da SSD a HDD o da HDD a SSD.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
ALTER LOCALITY GROUPutilizzando GoogleSQL o PostgreSQL.Ad esempio, le seguenti istruzioni DDL modificano l'opzione di archiviazione del gruppo di località,
separate_storage, in HDD:GoogleSQL
ALTER LOCALITY GROUP separate_storage SET OPTIONS (storage='hdd');PostgreSQL
ALTER LOCALITY GROUP separate_storage STORAGE 'hdd';Fai clic su Esegui.
gcloud
Per modificare l'opzione di archiviazione di un gruppo di località con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, le seguenti istruzioni DDL modificano l'opzione di archiviazione del gruppo di località, separate_storage, in 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';"
Modifica la policy basata sull'età
Puoi modificare la policy basata sull'età di un gruppo di località estendendo o riducendo il tempo di archiviazione dei dati nell'SSD prima che vengano spostati nello spazio di archiviazione HDD.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
ALTER LOCALITY GROUPutilizzando GoogleSQL o PostgreSQL.Ad esempio, le seguenti istruzioni DDL modificano la policy basata sull'età del gruppo di località,
spill_to_hdd, estendendo a 20 giorni il periodo di tempo in cui i dati vengono archiviati nell'SSD: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';Fai clic su Esegui.
gcloud
Per modificare la policy basata sull'età di un gruppo di località con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, le seguenti istruzioni DDL modificano la policy basata sull'età del gruppo di località, spill_to_hdd, estendendo a 20 giorni il periodo di tempo in cui i dati vengono archiviati nell'SSD:
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';"
Elimina un gruppo di località
Non puoi eliminare un gruppo di località se contiene dati. Devi prima spostare tutti i dati presenti nel gruppo di località in un altro gruppo di località. Per saperne di più, consulta Modifica il gruppo di località utilizzato dalla tabella.
Console
- Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la scheda vuota dell'editor.
Inserisci l'istruzione DDL
DROP LOCALITY GROUPutilizzando GoogleSQL o PostgreSQL.Ad esempio, puoi eseguire il comando seguente per eliminare un gruppo di località
ssd_only:GoogleSQL
DROP LOCALITY GROUP ssd_only;PostgreSQL
DROP LOCALITY GROUP ssd_only;Fai clic su Esegui.
gcloud
Per eliminare un gruppo di località con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.
Ad esempio, per eliminare il gruppo di località ssd_only, esegui:
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"
Passaggi successivi
- Scopri di più sull'archiviazione a livelli.
- Scopri di più sui gruppi di località.
- Scopri di più sull'ottimizzazione delle query con il pushdown del predicato del timestamp.