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

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

Vous pouvez également utiliser ALTER TABLE avec la clause SET OPTIONS pour activer ou désactiver columnar_policy sur une table. L'exemple suivant montre comment désactiver la règle dans le tableau Singers :

ALTER TABLE Singers 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