Pour obtenir une présentation conceptuelle du moteur de données en colonnes AlloyDB, consultez Présentation du moteur de données en colonnes AlloyDB Omni.
Activer le moteur de données en colonnes
Pour utiliser le moteur de données en colonnes sur une instance, définissez le flag google_columnar_engine.enabled de l'instance sur on.
Serveur unique
Pour définir google_columnar_engine.enabled sur on, procédez comme suit :
Exécutez la commande PostgreSQL
ALTER SYSTEM:ALTER SYSTEM SET google_columnar_engine.enabled = 'on'Si vous souhaitez ajuster la configuration du moteur de colonnes, suivez les instructions de la section suivante avant de redémarrer le serveur de base de données. Sinon, suivez l'étape ci-dessous pour redémarrer le serveur de base de données maintenant.
Pour que la modification des paramètres de configuration prenne effet, redémarrez votre serveur de base de données :
sudo systemctl restart alloydbomni18
Configurer la taille du store orienté colonnes
Lorsque le moteur de données en colonnes est activé sur une instance, AlloyDB Omni alloue une partie de la mémoire de l'instance pour stocker ses données en colonnes. En dédiant de la RAM haute vitesse à votre store orienté colonnes, vous vous assurez qu'AlloyDB Omni peut accéder aux données en colonnes le plus rapidement possible.
La mémoire et le cache de stockage représentent ensemble la capacité globale du moteur de données en colonnes.
Configurer la mémoire
Vous pouvez définir l'allocation sur une taille fixe à l'aide de l'option google_columnar_engine.memory_size_in_mb.
Serveur unique
Pour définir l'indicateur google_columnar_engine.memory_size_in_mb sur une instance, procédez comme suit :
Configurez la mémoire en exécutant la commande PostgreSQL
ALTER SYSTEM:ALTER SYSTEM SET google_columnar_engine.memory_size_in_mb = COLUMN_MEMORY_SIZE;Remplacez
COLUMN_MEMORY_SIZEpar la nouvelle taille de stockage de la colonne, en mégaoctets (par exemple,256).Pour que la modification des paramètres de configuration prenne effet, redémarrez votre serveur de base de données :
sudo systemctl restart alloydbomni18
Configurer le cache de stockage
Serveur unique
Appareils partagés ou dédiés
Vous pouvez configurer le cache de stockage du moteur de données en colonnes sur des appareils dédiés ou partagés.
Provisionner et installer le répertoire du cache
Sur les appareils dédiés, vous devez provisionner des disques, créer un système de fichiers, monter le répertoire du cache sur un chemin d'hôte (par exemple, /var/lib/postgresql/18/data/columnar_cache) et vous assurer qu'il dispose des autorisations d'écriture pour l'utilisateur postgres.
Activer le cache de stockage en colonnes
Exécutez
ALTER SYSTEMpour configurer le chemin d'accès et la taille du répertoire du cache :ALTER SYSTEM SET google_columnar_engine.omni_storage_cache_directory = 'CACHE_DIR_PATH'; ALTER SYSTEM SET google_columnar_engine.storage_cache_size = STORAGE_CACHE_SIZE;Remplacez les éléments suivants :
CACHE_DIR_PATH: chemin d'accès au répertoire du cache (par exemple,/var/lib/postgresql/18/data/columnar_cache).STORAGE_CACHE_SIZE: taille du cache de stockage de votre moteur de données en colonnes, en mégaoctets.
Redémarrez votre serveur de base de données :
sudo systemctl restart alloydbomni18
Activer la jointure vectorisée
Le moteur de données en colonnes dispose d'une fonctionnalité de jointure vectorisée qui peut améliorer les performances des jointures en appliquant un traitement vectorisé aux requêtes éligibles.
Une fois la jointure vectorisée activée, le planificateur de requêtes AlloyDB peut appliquer l'opérateur de jointure vectorisée au lieu de l'opérateur de jointure par hachage PostgreSQL standard. Le planificateur prend cette décision en comparant le coût d'exécution de la requête à l'aide de chaque méthode.
Pour activer la jointure vectorisée sur une instance, définissez l'indicateur google_columnar_engine.enable_vectorized_join de l'instance sur on.
Pour définir cet indicateur sur une instance, exécutez la commande PostgreSQL ALTER SYSTEM :
ALTER SYSTEM SET google_columnar_engine.enable_vectorized_join = 'on';
Par défaut, AlloyDB Omni alloue un thread à la fonctionnalité de jointure vectorisée. Vous pouvez augmenter le nombre de threads disponibles pour cette fonctionnalité en définissant l'indicateur google_columnar_engine.vectorized_join_threads sur une valeur plus élevée. La valeur maximale est de cpu_count * 2.
Actualiser manuellement votre moteur de données en colonnes
Par défaut, lorsque le moteur de données en colonnes est activé, il actualise le store orienté colonnes en arrière-plan.
Pour actualiser manuellement le moteur de colonnes, exécutez la requête SQL suivante :
SELECT google_columnar_engine_refresh(relation =>'TABLE_NAME');
Remplacez TABLE_NAME par le nom de la table ou de la vue matérialisée que vous souhaitez actualiser manuellement.
Désactiver le moteur de données en colonnes
Pour désactiver le moteur Columbar sur une instance, définissez l'indicateur google_columnar_engine.enabled sur off.
Serveur unique
Pour définir google_columnar_engine.enabled sur off, procédez comme suit :
- Exécutez la commande PostgreSQL
ALTER SYSTEM:
ALTER SYSTEM SET google_columnar_engine.enabled = 'off'
Pour que la modification des paramètres de configuration prenne effet, redémarrez votre serveur de base de données :
sudo systemctl restart alloydbomni18
Étapes suivantes
Consultez la liste complète des flags de base de données du moteur de données en colonnes.
Essayez l'atelier de programmation Accélérer les requêtes analytiques avec le moteur de données en colonnes dans AlloyDB Omni.