Cette page explique comment créer et gérer des groupes de localité Spanner. Vous pouvez utiliser des groupes de localités pour définir la règle de stockage hiérarchisé pour les données de votre schéma de base de données. Pour en savoir plus sur le fonctionnement du stockage hiérarchisé, consultez Stockage hiérarchisé.
Créer un groupe de localités
Vous pouvez créer un groupe de localités sans aucune règle de stockage hiérarchisé, ou vous pouvez créer un groupe de localités pour définir la règle de stockage des données dans votre schéma de base de données.
Si vous créez un groupe de localités sans règle de stockage hiérarchisé, il hérite de la règle de stockage hiérarchisé du groupe de localités default
. Si vous n'avez pas défini manuellement la règle de stockage du groupe de localités default
, elle est définie sur "SSD uniquement".
Console
Accédez à la page Instances de Spanner dans la consoleGoogle Cloud .
Sélectionnez l'instance dans laquelle vous souhaitez utiliser le stockage hiérarchisé.
Sélectionnez la base de données dans laquelle vous souhaitez utiliser le stockage hiérarchisé.
Dans le menu de navigation, cliquez sur Spanner Studio.
Sur la page Spanner Studio, cliquez sur
Nouvel onglet ou utilisez l'onglet de l'éditeur vide.Saisissez l'instruction LDD
CREATE LOCALITY GROUP
à l'aide de GoogleSQL ou PostgreSQL.Par exemple, vous pouvez exécuter la commande suivante pour créer un groupe de localités,
separate_storage
, qui stocke les colonnes dans un fichier distinct de celui des données pour le reste des colonnes :GoogleSQL
CREATE LOCALITY GROUP separate_storage;
PostgreSQL
CREATE LOCALITY GROUP separate_storage;
Par exemple, vous pouvez exécuter la commande suivante pour créer un groupe de localités,
ssd_only
, qui stocke les données sur un stockage SSD :GoogleSQL
CREATE LOCALITY GROUP ssd_only OPTIONS (storage='ssd');
PostgreSQL
CREATE LOCALITY GROUP ssd_only STORAGE 'ssd';
Par exemple, vous pouvez exécuter la commande suivante pour créer un groupe de localités,
hdd_only
, qui stocke les données sur un stockage HDD :GoogleSQL
CREATE LOCALITY GROUP hdd_only OPTIONS (storage='hdd');
PostgreSQL
CREATE LOCALITY GROUP hdd_only STORAGE 'hdd';
Cliquez sur Exécuter.
gcloud
Pour créer un groupe de localités avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, vous pouvez exécuter la commande suivante pour créer un groupe de localités, separate_storage
, qui stocke les colonnes dans un fichier distinct de celui des données pour le reste des colonnes :
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"
Par exemple, vous pouvez exécuter la commande suivante pour créer un groupe de localités, ssd_only
, qui stocke les données sur un 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'"
Par exemple, vous pouvez exécuter la commande suivante pour créer un groupe de localités, hdd_only
, qui stocke les données sur un stockage 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'"
Créer une règle basée sur l'âge pour un groupe de localités
Un groupe de localités avec une règle basée sur l'âge stocke les données les plus récentes dans un stockage SSD pendant une durée spécifiée. Une fois le délai spécifié écoulé, Spanner migre les données vers le stockage HDD lors de son cycle de compactage normal, qui se déroule généralement sur sept jours à compter du délai spécifié. Lorsque vous utilisez une règle de stockage par niveau basée sur l'âge, la durée minimale pendant laquelle les données doivent être stockées sur un SSD avant d'être transférées vers un stockage HDD est d'une heure.
Pour créer un groupe de localités basé sur l'âge, utilisez l'instruction LDD CREATE LOCALITY GROUP
.
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
CREATE LOCALITY GROUP
à l'aide de GoogleSQL ou PostgreSQL.Par exemple, l'instruction LDD suivante crée un groupe de localités,
spill_to_hdd
, qui stocke les données sur un stockage SSD pendant les 10 premiers jours, puis migre les données plus anciennes vers un stockage HDD au cours du cycle de compactage 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';
Cliquez sur Exécuter.
gcloud
Pour créer un groupe de localité basé sur l'âge avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, l'instruction LDD suivante crée un groupe de localités spill_to_hdd
qui stocke les données sur SSD pendant les 10 premiers jours, puis migre les données plus anciennes vers HDD au cours du cycle de compactage 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'"
Définir une règle de stockage hiérarchisé pour vos données
Une fois que vous avez créé votre groupe de localités, vous pouvez définir la stratégie de stockage hiérarchisé pour vos données. La règle de stockage hiérarchisé détermine le groupe de localité utilisé par les données. Vous pouvez définir la règle de stockage hiérarchisé au niveau de la base de données, de la table, de la colonne ou de l'index secondaire. Chaque objet de base de données hérite de la règle de stockage hiérarchisé de son parent, sauf si elle est explicitement remplacée.
Si vous créez un groupe de localités sans règle de stockage hiérarchisé, il hérite de la règle de stockage hiérarchisé du groupe de localités default
. Si vous n'avez pas défini manuellement la règle de stockage du groupe de localités default
, elle est définie sur "SSD uniquement".
Définir un groupe de localités au niveau de la base de données
La règle de stockage hiérarchisé par défaut prévoit que toutes les données sont stockées sur un stockage SSD. Vous pouvez modifier la règle de stockage hiérarchisé au niveau de la base de données en modifiant le groupe de localité default
. Pour les bases de données utilisant le dialecte GoogleSQL, votre instruction LDD ALTER LOCALITY GROUP
doit contenir default
entre guillemets inversés (`default`
). Vous n'avez besoin d'inclure les guillemets inversés que pour le groupe de localités default
.
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
ALTER LOCALITY GROUP
à l'aide de GoogleSQL ou PostgreSQL.Par exemple, les instructions LDD suivantes modifient le groupe de localité
default
pour utiliser une stratégie de stockage hiérarchisée basée sur l'âge. Toutes les données de la base de données sont transférées vers le stockage HDD au bout de 10 jours.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';
Cliquez sur Exécuter.
gcloud
Pour modifier la stratégie de stockage hiérarchisé du groupe de localités default
avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, les instructions LDD suivantes modifient le groupe de localité default
pour utiliser une stratégie de stockage hiérarchisée basée sur l'âge. Toutes les données de la base de données sont transférées vers le stockage HDD au bout de 10 jours.
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';"
Définir un groupe de localités au niveau de la table
Vous pouvez définir une règle de stockage hiérarchisé au niveau de la table pour vos données, qui remplace la règle de stockage hiérarchisé au niveau de la base de données. La règle de stockage hiérarchisé au niveau de la table s'applique également à toutes les colonnes de la table, sauf si vous avez défini une règle de stockage hiérarchisé de remplacement au niveau des colonnes.
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
CREATE TABLE
à l'aide de GoogleSQL ou PostgreSQL.Par exemple, les instructions LDD suivantes créent une table,
Singers
, qui utilise le groupe de localitésssd_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;
Cliquez sur Exécuter.
gcloud
Pour définir une stratégie de stockage hiérarchisé au niveau de la table avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, les instructions LDD suivantes créent une table, Singers
, qui utilise le groupe de 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;"
Définir une règle de remplacement au niveau des colonnes pour le stockage hiérarchisé
Vous pouvez définir une règle de stockage hiérarchisé au niveau des colonnes pour vos données.
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
CREATE TABLE
avec une règle de stockage hiérarchisé au niveau de la colonne à l'aide de GoogleSQL ou PostgreSQL.Par exemple, les instructions LDD suivantes créent une table
Singers
qui utilise le groupe de localitéssd_only
. Toutefois, la colonneAwards
remplace ce groupe de localité au niveau de la table et utilise le groupe de localitéspill_to_hdd
comme stratégie de stockage hiérarchisé :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;
Cliquez sur Exécuter.
gcloud
Pour définir une stratégie de stockage hiérarchisé avec remplacement au niveau des colonnes à l'aide de la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, les instructions LDD suivantes créent une table Singers
qui utilise le groupe de localité ssd_only
. Toutefois, la colonne Awards
remplace cette règle de stockage hiérarchisé au niveau de la table et utilise le groupe de localité spill_to_hdd
comme règle de stockage hiérarchisé :
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;"
Définir une stratégie de stockage hiérarchique de remplacement au niveau d'un index secondaire
Vous pouvez définir une règle de stockage hiérarchisé secondaire au niveau de l'index pour vos données.
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
CREATE INDEX
avec une stratégie de stockage hiérarchisé de remplacement au niveau de l'index secondaire à l'aide de GoogleSQL ou de PostgreSQL.Par exemple, les instructions LDD suivantes créent une table
Singers
qui utilise le groupe de localitéssd_only
. La base de données comporte également un index secondaire sur tous lesSingers
de la base de données par leur prénom et leur nom. L'indexSingersByFirstLastName
remplace la règle de stockage hiérarchisé au niveau de la table et utilise le groupe de localitéspill_to_hdd
comme règle de stockage hiérarchisé :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;
Cliquez sur Exécuter.
gcloud
Pour définir une stratégie de stockage hiérarchisé de remplacement au niveau de l'index secondaire avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, les instructions LDD suivantes créent une table Singers
qui utilise le groupe de localité ssd_only
. La base de données crée également un index secondaire sur tous les Singers
de la base de données par leur prénom et leur nom. L'index SingersByFirstLastName
remplace la règle de stockage hiérarchisé au niveau de la table et utilise le groupe de localités spill_to_hdd
comme règle de stockage hiérarchisé :
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;"
Définir un groupe de localités au niveau d'une colonne
Vous pouvez définir un groupe de localité au niveau des colonnes pour vos données, même si le groupe de localité ne dispose pas de règle de stockage hiérarchisé. La lecture des données de cette colonne est plus rapide que celle des données regroupées avec d'autres colonnes.
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
CREATE TABLE
qui attribue la colonne à un groupe de localités à l'aide de GoogleSQL ou PostgreSQL.Par exemple, les instructions LDD suivantes créent une table
Songs
avec une colonneLyricsCompressed
stockée séparément dans le groupe de localitéshdd_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;
Cliquez sur Exécuter.
gcloud
Pour définir un groupe de localité au niveau des colonnes pour vos données avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, les instructions LDD suivantes créent une table Songs
avec une colonne LyricsCompressed
stockée séparément dans le groupe de localités 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;
Déplacer des données entre des options de stockage
Vous pouvez déplacer des données entre le stockage SSD et HDD. Le transfert des données peut prendre jusqu'à sept jours. Vous pouvez suivre la progression du déplacement en interrogeant la table SPANNER_SYS.TABLE_SIZES_STATS_1HOUR
intégrée pour vérifier l'utilisation du stockage HDD et SSD pour chaque table de votre base de données. Vous pouvez également surveiller votre utilisation du stockage à l'aide de la métrique spanner.googleapis.com/instance/storage/used_bytes
de Cloud Monitoring pour afficher la répartition des disques SSD et HDD pour votre base de données ou votre instance. Pour en savoir plus, consultez Observabilité du stockage hiérarchisé.
Déplacer des données d'un stockage SSD vers un stockage HDD
Pour déplacer des données d'un stockage SSD vers un stockage HDD, vous pouvez créer un groupe de localité avec une règle de stockage hiérarchisée basée sur l'âge ou modifier la règle de stockage hiérarchisée d'un groupe de localité existant. Spanner déplace les données pendant son cycle de compactage normal, qui dure généralement sept jours. Si vous chargez des données et mettez à jour votre groupe de localités à l'aide de l'une des instructions LDD ALTER
suivantes, vous devez attendre jusqu'à sept jours pour que la modification du groupe de localités soit effectuée :
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 ...
Le délai d'attente ne s'applique pas si vous créez une table, une colonne ou un index, et que vous ajoutez le groupe de localités dans la syntaxe CREATE
ou ADD COLUMN
.
Pour en savoir plus, consultez Créer une règle basée sur l'âge pour un groupe de localités ou Modifier l'option de stockage.
Déplacer des données d'un stockage HDD vers un stockage SSD
Pour déplacer des données d'un stockage HDD vers un stockage SSD, vous pouvez modifier l'option de stockage d'un groupe de localités existant ou modifier le groupe de localités utilisé par la table.
Spanner déplace les données pendant son cycle de compactage normal, qui dure généralement sept jours. Si vous chargez des données et mettez à jour votre groupe de localités à l'aide de l'une des instructions LDD ALTER
suivantes, vous devez attendre jusqu'à sept jours pour que la modification du groupe de localités soit terminée :
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 ...
Le délai d'attente ne s'applique pas si vous créez une table, une colonne ou un index, et que vous ajoutez le groupe de localités dans la syntaxe CREATE
ou ADD COLUMN
.
Modifier le groupe de localités utilisé par une table
Vous pouvez modifier le groupe de localités utilisé par une table en définissant un nouveau groupe de localités dans les options de la table.
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
ALTER TABLE
qui modifie le groupe de localité utilisé par la table à l'aide de GoogleSQL ou PostgreSQL.Par exemple, les instructions LDD suivantes modifient le groupe de localités utilisé par la table
Singers
pour le remplacer parspill_to_hdd
:GoogleSQL
ALTER TABLE Singers SET OPTIONS (locality_group = 'spill_to_hdd');
PostgreSQL
ALTER TABLE Singers SET LOCALITY GROUP spill_to_hdd;
Cliquez sur Exécuter.
gcloud
Pour modifier le groupe de localité utilisé par une table avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, les instructions LDD suivantes modifient le groupe de localités utilisé par la table Singers
pour le remplacer par 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;"
Modifier le groupe de localités utilisé par la colonne d'une table
Vous pouvez modifier le groupe de localités utilisé par une colonne de table en définissant le groupe de localités dans les options de la colonne.
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
ALTER TABLE
qui modifie le groupe de localité utilisé par la table à l'aide de GoogleSQL ou PostgreSQL.Par exemple, les instructions LDD suivantes modifient le groupe de localités utilisé par la colonne
LastName
de la table enspill_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;
Cliquez sur Exécuter.
gcloud
Pour modifier le groupe de localité utilisé par une table avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, les instructions LDD suivantes modifient le groupe de localités utilisé par la colonne LastName
de la table en 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;"
Modifier un groupe de localités
Vous pouvez modifier un groupe de localités en changeant son option de stockage ou en changeant sa règle basée sur l'âge.
Spanner déplace les données pendant son cycle de compactage normal, qui dure généralement sept jours. Si vous chargez des données et mettez à jour votre groupe de localités à l'aide de ALTER LOCALITY GROUP
, vous devez attendre jusqu'à sept jours pour que les données existantes soient migrées. Le paramètre mis à jour s'applique immédiatement à toutes les nouvelles données écrites dans ce groupe de localités.
Modifier l'option de stockage
Vous pouvez modifier l'option de stockage d'un groupe de localités (SSD ou HDD).
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
ALTER LOCALITY GROUP
à l'aide de GoogleSQL ou PostgreSQL.Par exemple, les instructions LDD suivantes modifient l'option de stockage du groupe de localités
separate_storage
en HDD :GoogleSQL
ALTER LOCALITY GROUP separate_storage SET OPTIONS (storage='hdd');
PostgreSQL
ALTER LOCALITY GROUP separate_storage STORAGE 'hdd';
Cliquez sur Exécuter.
gcloud
Pour modifier l'option de stockage d'un groupe de localités avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, les instructions LDD suivantes modifient l'option de stockage du groupe de localités separate_storage
en 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';"
Modifier les règles basées sur l'âge
Vous pouvez modifier la règle basée sur l'âge d'un groupe de localités en prolongeant ou en raccourcissant la durée de stockage des données sur un SSD avant leur transfert vers un stockage HDD.
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
ALTER LOCALITY GROUP
à l'aide de GoogleSQL ou PostgreSQL.Par exemple, les instructions LDD suivantes modifient la règle basée sur l'âge du groupe de localités
spill_to_hdd
en prolongeant la durée de stockage des données sur SSD à 20 jours :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';
Cliquez sur Exécuter.
gcloud
Pour modifier la règle basée sur l'âge d'un groupe de localités avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, les instructions LDD suivantes modifient la règle basée sur l'âge du groupe de localités spill_to_hdd
en prolongeant la durée de stockage des données sur SSD à 20 jours :
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';"
Supprimer un groupe de localités
Vous ne pouvez pas supprimer un groupe de localités s'il contient des données. Vous devez d'abord déplacer toutes les données du groupe de localités vers un autre groupe de localités. Pour en savoir plus, consultez Modifier le groupe de localités utilisé par la table.
Console
- Sur la page Spanner Studio, cliquez sur Nouvel onglet ou utilisez l'onglet de l'éditeur vide.
Saisissez l'instruction LDD
DROP LOCALITY GROUP
à l'aide de GoogleSQL ou PostgreSQL.Par exemple, vous pouvez exécuter la commande suivante pour supprimer un groupe de localités
ssd_only
:GoogleSQL
DROP LOCALITY GROUP ssd_only;
PostgreSQL
DROP LOCALITY GROUP ssd_only;
Cliquez sur Exécuter.
gcloud
Pour supprimer un groupe de localités avec la commande gcloud CLI, utilisez gcloud spanner databases ddl update
.
Par exemple, pour supprimer le groupe de localités ssd_only
, exécutez la commande suivante :
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"
Étapes suivantes
- En savoir plus sur le stockage par niveau
- En savoir plus sur les groupes de localités
- Découvrez comment optimiser les requêtes avec le pushdown de prédicat de code temporel.