このページでは、データベース、テーブル、インデックスで Spanner カラム型エンジンを有効にして、ファイル形式の生成を高速化する方法について説明します。
Spanner カラム型エンジンを有効にする
Spanner カラム型エンジンは、columnar_policy
オプションを含む SET OPTIONS
句を使用して有効にします。このオプションは、DATABASE
、TABLE
、または INDEX
スキーマ オブジェクトを作成または変更するときに適用できます。SEARCH INDEX
スキーマ オブジェクトと VECTOR INDEX
スキーマ オブジェクトは、列形式になることはありません。
データベースとテーブルの階層の下位レベルは、親から columnar_policy
を継承します。この設定は下位レベルで変更できます。
columnar_policy
オプションには次のフラグがあります。
'enabled'
または'disabled'
は、特定のスキーマ オブジェクトのカラム型エンジンをオンまたはオフにします。NULL
(デフォルト)は、親オブジェクトにカラム型エンジン ポリシーが存在する場合は、そのポリシーを使用します。NULL
は、テーブル オブジェクトの以前の設定をクリアします。
OPTIONS
を省略して、親オブジェクトから columnar_policy
を継承することもできます。
以下の例は、次のことを行う方法を示しています。
- 列ポリシーを有効にしてデータベースを作成します。
- データベースから列ポリシーを継承する
Singers
テーブルを定義します(テーブル オプションのcolumnar_policy = NULL
は省略します)。 - 列ポリシーが明示的に無効になっている
Concerts
テーブルを定義します。
CREATE DATABASE Music;
ALTER DATABASE Music SET OPTIONS (columnar_policy = 'enabled');
CREATE TABLE Singers(
SingerId INT64 NOT NULL,
FirstName STRING(1024),
LastName STRING(1024),
BirthDate DATE,
Status STRING(1024),
LastUpdated TIMESTAMP,)
PRIMARY KEY(SingerId);
CREATE TABLE Concerts(
VenueId INT64 NOT NULL,
SingerId INT64 NOT NULL,
ConcertDate DATE NOT NULL,
BeginTime TIMESTAMP,
EndTime TIMESTAMP,)
PRIMARY KEY(VenueId, SingerId, ConcertDate),
OPTIONS (columnar_policy = 'disabled');
ALTER TABLE
と SET OPTIONS
句を組み合わせて使用すると、テーブルの columnar_policy
を有効または無効にすることもできます。次の例は、Singers
テーブルでポリシーを無効にする方法を示しています。
ALTER TABLE Singers SET OPTIONS (columnar_policy = 'disabled');
カラム型ファイル形式の生成
Spanner は、圧縮時にカラム形式のファイルを生成します。圧縮は通常、数日かけて行われるバックグラウンド プロセスですが、データベースのサイズが大幅に増加した場合は、より早く行われることがあります。詳細については、最適な列カバレッジをご覧ください。
次のステップ
- カラム型エンジンについて学習する。
- 列データのクエリを実行する方法を確認する。
- カラム型エンジンをモニタリングする方法を確認する。