Configurer le moteur de données en colonnes Spanner

Cette page explique comment activer le moteur en colonnes Spanner sur une base de données, une table ou un index, et comment accélérer la génération de formats de fichiers.

Activer le moteur de données en colonnes Spanner

Le moteur de données en colonnes Spanner est activé à l'aide d'une clause SET OPTIONS avec l'option columnar_policy. Vous pouvez appliquer cette option lorsque vous créez ou modifiez des objets de schéma DATABASE, TABLE ou INDEX. Les objets de schéma SEARCH INDEX et VECTOR INDEX ne sont jamais au format colonne.

Les niveaux inférieurs d'une hiérarchie de base de données et de tables héritent de columnar_policy de leur parent. Vous pouvez modifier ce paramètre à des niveaux inférieurs.

L'option columnar_policy comporte les indicateurs suivants :

  • 'enabled' ou 'disabled' activent ou désactivent le moteur en colonnes pour l'objet de schéma spécifique.
  • NULL (par défaut) utilise la règle du moteur en colonnes de l'objet parent, le cas échéant. NULL efface les paramètres précédents d'un objet de tableau.

Vous pouvez également omettre OPTIONS pour hériter de columnar_policy de l'objet parent.

L'exemple suivant montre comment :

  • Créez une base de données avec la stratégie de colonne activée.
  • Définissez une table Singers qui hérite de la règle de colonne de la base de données (omettez columnar_policy = NULL pour l'option de table).
  • Définissez une table Concerts avec la stratégie de colonne explicitement désactivée.
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),
  OPTIONS ();

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

L'exemple suivant montre comment activer le moteur de colonnes sur une base de données existante nommée Artists et le désactiver sur une table de cette base de données appelée Museums :

ALTER DATABASE Artists SET OPTIONS (columnar_policy = 'enabled');

ALTER TABLE Museums SET OPTIONS (columnar_policy = 'disabled');

Génération de formats de fichiers en colonnes

Spanner génère le format de fichier en colonnes au moment de la compaction. La compaction est un processus en arrière-plan qui s'étend généralement sur plusieurs jours, mais qui peut se produire plus tôt si la taille de la base de données augmente considérablement. Pour en savoir plus, consultez Couverture optimale des colonnes.

Étapes suivantes