建立及管理地區群組

本頁說明如何建立及管理 Spanner 地區群組。您可以使用區域群組,為資料庫結構定義資料的分層儲存政策。如要瞭解分層儲存空間的運作方式,請參閱「分層儲存空間」。

建立地區群組

您可以建立不含任何分層儲存空間政策的地域群組,也可以建立地域群組,為資料庫結構定義資料的儲存空間政策。

如果您建立的區域群組沒有分層儲存空間政策,該區域群組就會沿用 default 區域群組的分層儲存空間政策。如果您尚未手動設定 default 區域群組的儲存空間政策,系統會將儲存空間政策設為僅限 SSD。

控制台

  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_only,將資料儲存在 SSD 儲存空間:

    GoogleSQL

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

    PostgreSQL

    CREATE LOCALITY GROUP ssd_only STORAGE 'ssd';
    

    舉例來說,您可以執行下列指令來建立區域性群組 hdd_only,將資料儲存在 HDD 儲存空間:

    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_only,將資料儲存在 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'"

舉例來說,您可以執行下列指令來建立區域性群組 hdd_only,將資料儲存在 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'"

為地區群組建立年齡限制政策

採用以時間為基礎政策的區域群組,會將較新的資料儲存在 SSD 儲存空間一段指定時間。這個時間是相對於資料的修訂時間戳記。指定時間過後,Spanner 會在正常壓縮週期內將資料遷移至 HDD 儲存空間,這通常會在指定時間後的七天內發生。使用以時間為準的分層儲存空間政策時,資料必須在 SSD 中儲存至少一小時,才會移至 HDD 儲存空間。

如要建立以年齡為依據的地域群組,請使用 CREATE LOCALITY GROUP DDL 陳述式。

控制台

  1. 在「Spanner Studio」頁面中,按一下「新增分頁」,或使用空白的編輯器分頁。
  2. 使用 GoogleSQL 或 PostgreSQL 輸入 CREATE LOCALITY GROUP DDL 陳述式。

    舉例來說,下列 DDL 陳述式會建立名為 spill_to_hdd 的區域性群組,將資料儲存在 SSD 儲存空間的前 10 天,然後在正常壓縮週期中,將舊資料遷移至 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 陳述式會建立本機群組 spill_to_hdd,將資料儲存在 SSD 中 10 天,然後在正常壓縮週期中,將舊資料遷移至 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'"

為資料設定分層儲存空間政策

建立地區群組後,即可為資料設定分層儲存空間政策。分層儲存空間政策會決定資料使用的區域群組。您可以在資料庫、資料表、資料欄或次要索引層級設定分層儲存空間政策。除非明確覆寫,否則每個資料庫物件都會沿用父項的階層式儲存空間政策。

如果您建立的區域群組沒有分層儲存空間政策,該區域群組就會沿用 default 區域群組的分層儲存空間政策。如果您尚未手動設定 default 區域群組的儲存空間政策,系統會將儲存空間政策設為僅限 SSD。

設定資料庫層級的區域群組

預設的分層儲存空間政策是將所有資料儲存在 SSD 儲存空間。您可以變更資料庫層級的分層儲存空間政策,方法是修改default區域群組。如果是 GoogleSQL 方言資料庫,您的 ALTER LOCALITY GROUP DDL 陳述式必須在反引號 (`default`) 內含有 default。您只需要為 default 地理位置群組加上反引號。

控制台

  1. 在「Spanner Studio」頁面中,按一下「新增分頁」,或使用空白的編輯器分頁。
  2. 使用 GoogleSQL 或 PostgreSQL 輸入 ALTER LOCALITY GROUP DDL 陳述式。

    舉例來說,下列 DDL 陳述式會變更 default 地區群組,以使用以年齡為準的分層儲存空間政策。資料庫中的所有資料會在 10 天後移至硬碟儲存空間。

    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 天後移至硬碟儲存空間。

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

設定資料表層級的地區群組

您可以為資料設定資料表層級的分層儲存空間政策,覆寫資料庫層級的分層儲存空間政策。除非您已設定資料欄層級的覆寫分層儲存空間政策,否則資料表層級的分層儲存空間政策也適用於資料表中的所有資料欄。

控制台

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

設定資料欄層級的覆寫分級式儲存空間政策

您可以為資料設定資料欄層級的覆寫分層儲存空間政策。

控制台

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

設定次要索引層級的覆寫分級式儲存空間政策

您可以為資料設定次要索引層級的覆寫分層儲存空間政策。

控制台

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

設定資料欄層級的地區性群組

即使地區群組沒有分層儲存空間政策,您還是可以為資料設定資料欄層級的地區群組。讀取這個資料欄的資料,比讀取與其他資料欄分組的資料更快。

控制台

  1. 在「Spanner Studio」頁面中,按一下「新增分頁」,或使用空白的編輯器分頁。
  2. 使用 GoogleSQL 或 PostgreSQL,輸入將資料欄指派給區域性群組的 CREATE TABLE DDL 陳述式。

    舉例來說,下列 DDL 陳述式會建立 Songs 資料表,其中包含儲存在 hdd_only 區域群組中的 LyricsCompressed 資料欄:

    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 陳述式會建立 Songs 資料表,其中包含 LyricsCompressed 資料欄,該資料欄會分別儲存在 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;

在不同儲存空間選項之間移動資料

您可以在 SSD 和 HDD 儲存空間之間移動資料。資料轉移作業最多可能需要七天。如要加快 SSD 和 HDD 之間的資料遷移速度,可以手動觸發主要壓縮作業。您可以查詢內建的 SPANNER_SYS.TABLE_SIZES_STATS_1HOUR 資料表,查看資料庫中每個資料表的 HDD 和 SSD 儲存空間用量,藉此監控遷移進度。您也可以使用 Cloud Monitoring spanner.googleapis.com/instance/storage/used_bytes 指標,顯示資料庫或執行個體的 SSD 和 HDD 細目,藉此監控儲存空間用量。詳情請參閱「分層儲存空間可觀測性」。

將資料從 SSD 移至 HDD 儲存空間

如要將資料從 SSD 移至 HDD 儲存空間,您可以建立新的區域群組,並採用以時間為準的分層儲存空間政策,或是變更現有區域群組的分層儲存空間政策。Spanner 會在正常壓縮週期內移動資料,通常需要七天。如果您使用下列 ALTER DDL 陳述式載入資料及更新地域群組,則必須等待最多七天,地域群組的變更才會完成:

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 ...

如果您要建立新的資料表、資料欄或索引,並將地域性群組新增為 CREATE 或 ADD COLUMN 語法的一部分,則不適用等待期。

詳情請參閱「為地區群組建立年齡限制政策」或「變更儲存選項」。

將資料從 HDD 移至 SSD 儲存空間

如要將資料從 HDD 移至 SSD 儲存空間,可以變更現有區域群組的儲存選項,或變更表格使用的區域群組。Spanner 會在正常壓縮週期內移動資料,這通常需要七天。如果您使用下列 ALTER DDL 陳述式載入資料並更新地域群組,則必須等待最多七天,地域群組的變更才會完成:

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 ...

如果您要建立新的資料表、資料欄或索引,並將地域性群組新增為 CREATE 或 ADD COLUMN 語法的一部分,則不適用等待期。

變更表格使用的區域性群組

如要變更表格使用的地區群組,請在表格選項中設定新的或不同的地區群組。

控制台

  1. 在「Spanner Studio」頁面中,按一下「新增分頁」,或使用空白的編輯器分頁。
  2. 輸入 ALTER TABLE DDL 陳述式,使用 GoogleSQL 或 PostgreSQL 變更資料表使用的區域性群組。

    舉例來說,下列 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;"

變更資料表資料欄使用的區域性群組

如要變更資料表資料欄使用的區域性群組,請在資料欄選項中設定區域性群組。

控制台

  1. 在「Spanner Studio」頁面中,按一下「新增分頁」,或使用空白的編輯器分頁。
  2. 輸入 ALTER TABLE DDL 陳述式,使用 GoogleSQL 或 PostgreSQL 變更資料表使用的區域性群組。

    舉例來說,下列 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;"

變更地區群組

您可以變更儲存空間選項或變更以時間為基礎的政策,藉此修改地區群組。Spanner 會在正常壓縮週期內移動資料,這通常需要七天。如果您使用 ALTER LOCALITY GROUP 載入資料並更新地域群組,則必須等待最多七天,現有資料才會遷移。更新後的設定會立即套用至寫入該地區群組的所有新資料。

變更儲存空間選項

您可以將地域群組的儲存空間選項從 SSD 改為 HDD,或從 HDD 改為 SSD。

控制台

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

變更以存在時間為準的政策

您可以延長或縮短資料在 SSD 中儲存的時間,然後再移至 HDD 儲存空間,藉此變更地域群組的年齡限制政策。

控制台

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

刪除地區群組

如果地區群組含有資料,就無法刪除。請先將地區群組中的所有資料移至其他地區群組。詳情請參閱「變更資料表使用的區域性群組」。

控制台

  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"

後續步驟