地域グループを作成、管理する

このページでは、Spanner のロカリティ グループを作成して管理する方法について説明します。局所性グループを使用すると、データベース スキーマ内のデータの階層ストレージ ポリシーを定義できます。階層型ストレージの仕組みについては、階層型ストレージをご覧ください。

ロケーション グループを作成する

階層型ストレージ ポリシーなしでローカリティ グループを作成することも、ローカリティ グループを作成してデータベース スキーマ内のデータのストレージ ポリシーを定義することもできます。

Console

  1. Google Cloud コンソールで、Spanner の [インスタンス] ページに移動します。

    Instances

  2. 階層ストレージを使用するインスタンスを選択します。

  3. 階層ストレージを使用するデータベースを選択します。

  4. ナビゲーション メニューで [Spanner Studio] をクリックします。

  5. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。

  6. GoogleSQL または PostgreSQL を使用して CREATE LOCALITY GROUP DDL ステートメントを入力します。

    たとえば、次のコマンドを実行して、他の列のデータとは別のファイルに列を保存するローカリティ グループ separate_storage を作成できます。

    GoogleSQL

    CREATE LOCALITY GROUP separate_storage;
    

    PostgreSQL

    CREATE LOCALITY GROUP separate_storage;
    

    たとえば、次のコマンドを実行して、SSD ストレージにデータを保存するローカリティ グループ ssd_only を作成できます。

    GoogleSQL

    CREATE LOCALITY GROUP ssd_only OPTIONS (storage='ssd');
    

    PostgreSQL

    CREATE LOCALITY GROUP ssd_only STORAGE 'ssd';
    

    たとえば、次のコマンドを実行して、HDD ストレージにデータを保存するローカリティ グループ hdd_only を作成できます。

    GoogleSQL

    CREATE LOCALITY GROUP hdd_only OPTIONS (storage='hdd');
    

    PostgreSQL

    CREATE LOCALITY GROUP hdd_only STORAGE 'hdd';
    
  7. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用してロカリティ グループを作成するには、gcloud spanner databases ddl update を使用します。

たとえば、次のコマンドを実行して、他の列のデータとは別のファイルに列を保存するローカリティ グループ separate_storage を作成できます。

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"

たとえば、次のコマンドを実行して、SSD にデータを保存するローカリティ グループ ssd_only を作成できます。

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'"

たとえば、次のコマンドを実行して、HDD ストレージにデータを保存するローカリティ グループ hdd_only を作成できます。

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'"

地域グループに年齢ベースのポリシーを作成する

存続期間ベースのポリシーを持つロカリティ グループは、新しいデータを SSD ストレージに指定された時間だけ保存します。指定された時間が経過すると、Spanner は通常の圧縮サイクル中にデータを HDD ストレージに移行します。通常、このサイクルは指定された時間から 7 日間にわたって行われます。年齢ベースの階層ストレージ ポリシーを使用する場合、HDD ストレージに移動する前に SSD に保存する必要があるデータの最小時間は 1 時間です。

年齢ベースのローカリティ グループを作成するには、CREATE LOCALITY GROUP DDL ステートメントを使用します。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して CREATE LOCALITY GROUP DDL ステートメントを入力します。

    たとえば、次の DDL ステートメントは、最初の 10 日間は SSD ストレージにデータを保存し、その後は通常の圧縮サイクルで古いデータを HDD ストレージに移行するローカリティ グループ spill_to_hdd を作成します。

    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';
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用して年齢ベースのローカリティ グループを作成するには、gcloud spanner databases ddl update を使用します。

たとえば、次の DDL ステートメントは、最初の 10 日間は SSD にデータを保存し、その後は通常の圧縮サイクルで古いデータを HDD に移行するローカリティ グループ spill_to_hdd を作成します。

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'"

データに階層ストレージ ポリシーを設定する

ロカリティ グループを作成したら、データに階層型ストレージ ポリシーを設定できます。階層ストレージ ポリシーによって、データが使用するローカリティ グループが決まります。階層型ストレージ ポリシーは、データベース、テーブル、列、またはセカンダリ インデックス レベルで設定できます。各データベース オブジェクトは、明示的にオーバーライドしない限り、親から階層型ストレージ ポリシーを継承します。

データベース レベルのローカリティ グループを設定する

デフォルトの階層型ストレージ ポリシーでは、すべてのデータが SSD ストレージに保存されます。default ロカリティ グループを変更することで、データベース レベルの階層ストレージ ポリシーを変更できます。GoogleSQL 言語データベースの場合、ALTER LOCALITY GROUP DDL ステートメントにはバッククォート(`default`)内に default を含める必要があります。バッククォートは、default ロカリティ グループにのみ含める必要があります。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して ALTER LOCALITY GROUP DDL ステートメントを入力します。

    たとえば、次の DDL ステートメントは、default ローカリティ グループを変更して、年齢ベースの階層型ストレージ ポリシーを使用します。データベース内のすべてのデータは、10 日後に HDD ストレージに移動されます。

    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';
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用して default ロカリティ グループの階層型ストレージ ポリシーを変更するには、gcloud spanner databases ddl update を使用します。

たとえば、次の DDL ステートメントは、default ローカリティ グループを変更して、年齢ベースの階層型ストレージ ポリシーを使用します。データベース内のすべてのデータは、10 日後に HDD ストレージに移動されます。

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';"

テーブルレベルのローカリティ グループを設定する

データに対してテーブルレベルの階層型ストレージ ポリシーを設定し、データベース レベルの階層型ストレージ ポリシーをオーバーライドできます。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して CREATE TABLE DDL ステートメントを入力します。

    たとえば、次の DDL ステートメントは、ローカリティ グループ ssd_only を使用するテーブル Singers を作成します。

    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;
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用してテーブルレベルの階層ストレージ ポリシーを設定するには、gcloud spanner databases ddl update を使用します。

たとえば、次の DDL ステートメントは、ローカリティ グループ ssd_only を使用するテーブル Singers を作成します。

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;"

列レベルのオーバーライド階層型ストレージ ポリシーを設定する

データに列レベルのオーバーライド階層型ストレージ ポリシーを設定できます。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して、列レベルのオーバーライド 階層型ストレージ ポリシーを含む CREATE TABLE DDL ステートメントを入力します。

    たとえば、次の DDL ステートメントは、ローカリティ グループ ssd_only を使用する Singers テーブルを作成します。ただし、Awards 列は、このテーブルレベルのローカリティ グループをオーバーライドし、階層型ストレージ ポリシーとして spill_to_hdd ローカリティ グループを使用します。

    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;
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用して列レベルのオーバーライド階層型ストレージ ポリシーを設定するには、gcloud spanner databases ddl update を使用します。

たとえば、次の DDL ステートメントは、ローカリティ グループ ssd_only を使用する Singers テーブルを作成します。ただし、Awards 列は、このテーブルレベルの階層型ストレージ ポリシーをオーバーライドし、spill_to_hdd ロカリティ グループを階層型ストレージ ポリシーとして使用します。

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;"

セカンダリ インデックス レベルのオーバーライド階層型ストレージ ポリシーを設定する

データにセカンダリ インデックス レベルのオーバーライド階層型ストレージ ポリシーを設定できます。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して、セカンダリ インデックス レベルのオーバーライド階層型ストレージ ポリシーを含む CREATE INDEX DDL ステートメントを入力します。

    たとえば、次の DDL ステートメントは、ローカリティ グループ ssd_only を使用する Singers テーブルを作成します。また、データベースには、データベース内のすべての Singers の姓名に関するセカンダリ インデックスもあります。SingersByFirstLastName インデックスは、テーブルレベルの階層型ストレージ ポリシーをオーバーライドし、spill_to_hdd ローカリティ グループを階層型ストレージ ポリシーとして使用します。

    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;
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用してセカンダリ インデックス レベルのオーバーライド階層型ストレージ ポリシーを設定するには、gcloud spanner databases ddl update を使用します。

たとえば、次の DDL ステートメントは、ローカリティ グループ ssd_only を使用する Singers テーブルを作成します。また、データベース内のすべての Singers に対して、姓名でセカンダリ インデックスも作成されます。SingersByFirstLastName インデックスは、テーブルレベルの階層型ストレージ ポリシーをオーバーライドし、spill_to_hdd ローカリティ グループを階層型ストレージ ポリシーとして使用します。

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;"

列レベルのローカリティ グループを設定する

ロカリティ グループに階層型ストレージ ポリシーがない場合でも、データに列レベルのロカリティ グループを設定できます。この列からのデータの読み取りは、他の列とグループ化されたデータの読み取りよりも高速です。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して、列をロカリティ グループに割り当てる CREATE TABLE DDL ステートメントを入力します。

    たとえば、次の DDL ステートメントは、hdd_only ロカリティ グループに個別に保存される LyricsCompressed 列を持つ Songs テーブルを作成します。

    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;
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用してデータの列レベルのローカリティ グループを設定するには、gcloud spanner databases ddl update を使用します。

たとえば、次の DDL ステートメントは、hdd_only ロカリティ グループに個別に保存される LyricsCompressed 列を持つ Songs テーブルを作成します。

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;

ストレージ オプション間でデータを移動する

SSD ストレージと HDD ストレージの間でデータを移動できます。データの移動には最長で 7 日ほどかかります。組み込みの SPANNER_SYS.TABLE_SIZES_STATS_1HOUR テーブルをクエリして、データベース内の各テーブルの HDD と SSD のストレージ使用量を確認することで、移動の進行状況をモニタリングできます。Cloud Monitoring の spanner.googleapis.com/instance/storage/used_bytes 指標を使用して、データベースまたはインスタンスの SSD と HDD の内訳を表示することで、ストレージ使用量をモニタリングすることもできます。詳細については、階層型ストレージの可観測性をご覧ください。

SSD ストレージから HDD ストレージにデータを移動する

SSD から HDD ストレージにデータを移動するには、年齢ベースの階層型ストレージ ポリシーを使用して新しいローカリティ グループを作成するか、既存のローカリティ グループの階層型ストレージ ポリシーを変更します。SSD から HDD へのデータの移動には、最長で 7 日かかることがあります。詳細については、ロケーション グループに年齢ベースのポリシーを作成するまたはストレージ オプションを変更するをご覧ください。

HDD から SSD ストレージにデータを移動する

HDD ストレージから SSD ストレージにデータを移動するには、既存のローカリティ グループのストレージ オプションを変更するか、テーブルで使用されるローカリティ グループを変更します。SSD から HDD へのデータの移動には、最長で 7 日かかることがあります。

テーブルで使用されるローカリティ グループを変更する

テーブルで使用されるローカリティ グループを変更するには、テーブル オプションで新しいローカリティ グループまたは別のローカリティ グループを設定します。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して、テーブルで使用されるローカリティ グループを変更する ALTER TABLE DDL ステートメントを入力します。

    たとえば、次の DDL ステートメントは、テーブル Singers で使用されるローカリティ グループを spill_to_hdd に変更します。

    GoogleSQL

    ALTER TABLE Singers SET OPTIONS (locality_group = 'spill_to_hdd');
    

    PostgreSQL

    ALTER TABLE Singers SET LOCALITY GROUP spill_to_hdd;
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用してテーブルで使用されるローカリティ グループを変更するには、gcloud spanner databases ddl update を使用します。

たとえば、次の DDL ステートメントは、テーブル Singers で使用されるローカリティ グループを 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;"

テーブルの列で使用されるローカリティ グループを変更する

テーブルの列で使用されるローカリティ グループは、列オプションでローカリティ グループを設定することで変更できます。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して、テーブルで使用されるローカリティ グループを変更する ALTER TABLE DDL ステートメントを入力します。

    たとえば、次の DDL ステートメントは、テーブルの列 LastName で使用されるローカリティ グループを spill_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;
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用してテーブルで使用されるローカリティ グループを変更するには、gcloud spanner databases ddl update を使用します。

たとえば、次の DDL ステートメントは、テーブルの列 LastName で使用されるローカリティ グループを 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;"

ロカリティ グループを変更する

ロカリティ グループは、ストレージ オプションを変更するか、経過時間に基づくポリシーを変更することで変更できます。

ストレージ オプションを変更する

ロカリティ グループのストレージ オプションを SSD から HDD に、または HDD から SSD に変更できます。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して ALTER LOCALITY GROUP DDL ステートメントを入力します。

    たとえば、次の DDL ステートメントは、ローカリティ グループ separate_storage のストレージ オプションを HDD に変更します。

    GoogleSQL

    ALTER LOCALITY GROUP separate_storage SET OPTIONS (storage='hdd');
    

    PostgreSQL

    ALTER LOCALITY GROUP separate_storage STORAGE 'hdd';
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用してロカリティ グループのストレージ オプションを変更するには、gcloud spanner databases ddl update を使用します。

たとえば、次の DDL ステートメントは、ローカリティ グループ separate_storage のストレージ オプションを 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';"

経過時間ベースのポリシーを変更する

ローカリティ グループの存続期間ベースのポリシーを変更するには、データが HDD ストレージに移動される前に SSD に保存される時間を延長または短縮します。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して ALTER LOCALITY GROUP DDL ステートメントを入力します。

    たとえば、次の DDL ステートメントは、データが SSD に保存される時間を 20 日に延長することで、ローカリティ グループ spill_to_hdd の存続期間ベースのポリシーを変更します。

    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';
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用してロカリティ グループの年齢ベースのポリシーを変更するには、gcloud spanner databases ddl update を使用します。

たとえば、次の DDL ステートメントは、データが SSD に保存される時間を 20 日に延長することで、ローカリティ グループ spill_to_hdd の存続期間ベースのポリシーを変更します。

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';"

ロカリティ グループを削除する

データが含まれているロカリティ グループは削除できません。まず、ロケーション グループ内のすべてのデータを別のロケーション グループに移動する必要があります。詳細については、テーブルで使用されるローカリティ グループを変更するをご覧ください。

Console

  1. [Spanner Studio] ページで、 [新しいタブ] をクリックするか、空のエディタタブを使用します。
  2. GoogleSQL または PostgreSQL を使用して DROP LOCALITY GROUP DDL ステートメントを入力します。

    たとえば、次のコマンドを実行してローカリティ グループ ssd_only を削除できます。

    GoogleSQL

    DROP LOCALITY GROUP ssd_only;
    

    PostgreSQL

    DROP LOCALITY GROUP ssd_only;
    
  3. [実行] をクリックします。

gcloud

gcloud CLI コマンドを使用してロカリティ グループを削除するには、gcloud spanner databases ddl update を使用します。

たとえば、ローカリティ グループ ssd_only を削除するには、次のコマンドを実行します。

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"

次のステップ