AlloyDB カラム型エンジンのコンセプトの概要については、AlloyDB Omni カラム型エンジンの概要をご覧ください。
カラム型エンジンを有効にする
インスタンスでカラム型エンジンを使用するには、インスタンスの google_columnar_engine.enabled フラグを on に設定します。
単一サーバー
google_columnar_engine.enabled を on に設定する手順は次のとおりです。
ALTER SYSTEMPostgreSQL コマンドを実行します。ALTER SYSTEM SET google_columnar_engine.enabled = 'on'カラム型エンジンの構成を調整する場合は、データベース サーバーを再起動する前に、次のセクションの手順に沿って操作します。構成を調整しない場合は、次の手順でデータベース サーバーを再起動します。
構成パラメータの変更を有効にするには、データベース サーバーを再起動します。
sudo systemctl restart alloydbomni18
カラム型ストアのサイズを構成する
インスタンスでカラム型エンジンが有効になっている間、AlloyDB Omni はインスタンスのメモリの一部を割り振り、カラム型データを保存します。高速 RAM をカラムストア専用にすることで、AlloyDB Omni はカラム型データに可能な限り高速にアクセスできます。
メモリ キャッシュとストレージ キャッシュを合わせた容量が、カラム型エンジンの総容量を表します。
メモリを構成する
割り当てを固定サイズに設定するには、google_columnar_engine.memory_size_in_mb フラグを使用します。
単一サーバー
インスタンスに google_columnar_engine.memory_size_in_mb フラグを設定する手順は次のとおりです。
ALTER SYSTEMPostgreSQL コマンドを実行してメモリを構成します。ALTER SYSTEM SET google_columnar_engine.memory_size_in_mb = COLUMN_MEMORY_SIZE;COLUMN_MEMORY_SIZEは、カラム型ストレージの新しいサイズ(メガバイト単位)に置き換えます(例:256)。構成パラメータの変更を有効にするには、データベース サーバーを再起動します。
sudo systemctl restart alloydbomni18
ストレージ キャッシュを構成する
単一サーバー
共有デバイスまたは専用デバイス
カラム型エンジンのストレージ キャッシュは、専用デバイスまたは共有デバイスで構成できます。
キャッシュ ディレクトリをプロビジョニングしてマウントする
専用デバイスでは、ディスクをプロビジョニングし、ファイル システムを作成し、キャッシュ ディレクトリをホストパス(/var/lib/postgresql/18/data/columnar_cache など)にマウントして、postgres ユーザーに書き込み権限があることを確認する必要があります。
カラム型ストレージ キャッシュを有効にする
ALTER SYSTEMを実行して、キャッシュ ディレクトリのパスとサイズを構成します。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;次のように置き換えます。
CACHE_DIR_PATH: キャッシュ ディレクトリのパス(例:/var/lib/postgresql/18/data/columnar_cache)。STORAGE_CACHE_SIZE: カラム型エンジン ストレージ キャッシュのサイズ(メガバイト単位)。
データベース サーバーを再起動します。
sudo systemctl restart alloydbomni18
ベクトル化結合を有効にする
カラム型エンジンには、ベクトル化結合機能があります。この機能を使用すると、対象となるクエリにベクトル化処理を適用することで、結合のパフォーマンスを向上できます。
ベクトル化結合を有効にすると、AlloyDB クエリ プランナーは、標準の PostgreSQL ハッシュ結合演算子ではなく、ベクトル化結合演算子を適用できます。プランナーは、各方法でクエリを実行するコストを比較して、この決定を行います。
インスタンスでベクトル化結合を有効にするには、インスタンスの google_columnar_engine.enable_vectorized_join フラグを on に設定します。
インスタンスにこのフラグを設定するには、ALTER SYSTEM PostgreSQL コマンドを実行します。
ALTER SYSTEM SET google_columnar_engine.enable_vectorized_join = 'on';
AlloyDB Omni は、デフォルトでベクトル化された結合機能に 1 つのスレッドを割り当てます。google_columnar_engine.vectorized_join_threads フラグを大きい値に設定すると、この機能で使用できるスレッド数を増やすことができます。最大値は cpu_count * 2 です。
カラム型エンジンを手動で更新する
デフォルトでは、カラム型エンジンが有効になっていると、バックグラウンドでカラム型ストアが更新されます。
カラム型エンジンを手動で更新するには、次の SQL クエリを実行します。
SELECT google_columnar_engine_refresh(relation =>'TABLE_NAME');
TABLE_NAME は、手動で更新するテーブルまたはマテリアライズド ビューの名前に置き換えます。
カラム型エンジンを無効にする
インスタンスでカラム型エンジンを無効にするには、google_columnar_engine.enabled フラグを off に設定します。
単一サーバー
google_columnar_engine.enabled を off に設定する手順は次のとおりです。
ALTER SYSTEMPostgreSQL コマンドを実行します。
ALTER SYSTEM SET google_columnar_engine.enabled = 'off'
構成パラメータの変更を有効にするには、データベース サーバーを再起動します。
sudo systemctl restart alloydbomni18
次のステップ
カラム型エンジン データベース フラグの一覧を確認する。
Codelab の AlloyDB Omni でカラム型エンジンを使用して分析クエリを高速化するを試す。