「共有メモリが不足しています」というエラーを修正する
カラム型エンジンに十分な共有メモリがない状態で AlloyDB Omni を実行すると、次のエラーが表示されることがあります。
Insufficient shared memory for generating the columnar formats.
この問題に対処するには、AlloyDB Omni コンテナで使用可能な共有メモリの量を指定します。
Linux
/dev/shm
ディレクトリがコンテナにマウントされた状態で AlloyDB Omni がインストールされていることを確認します。詳細については、AlloyDB Omni のインストールをカスタマイズするをご覧ください。/etc/fstab
ファイルを編集するなどして、ホストマシンの/dev/shm
パーティションのサイズを増やします。
macOS
新しい AlloyDB Omni コンテナをインストールし、--shm-size
フラグに大きな共有メモリ値を指定します。
カラム型エンジンに入力されたテーブルを確認する
g_columnar_relations
ビューで、カラム型エンジンに存在するテーブルを確認するクエリを作成します。
SELECT * FROM g_columnar_relations;
カラム型エンジンが使用するメモリの合計を確認する
google_columnar_engine_memory_available()
SQL 関数を使用して、カラム型エンジンが使用するメモリの量を確認します。
SELECT google_columnar_engine_memory_available();
特定の列がカラム型エンジンに入力されていないかどうかを確認する
次の解決策をお試しください。
- カラム型エンジンがその列のデータ型をサポートしているかどうかを確認します。
- ベーステーブルで最近列を追加または削除した場合は、同じ操作をカラム型エンジンでも実行したことを確認します。
クエリでカラム型エンジンが使用されているかどうかを確認する
クエリプランで、「カスタム スキャン(カラム型スキャン)」プランナー ノードがあるかどうかを確認します。
進行中のメンテナンス ジョブを確認する
g_columnar_jobs
ビューでクエリを実行して、進行中のジョブを確認します。
SELECT * FROM g_columnar_jobs;
カラム型エンジンでメンテナンス アクティビティが使用するリソースの量を設定する
デフォルトでは、カラム型エンジンはデータベース リソースの最大 20% を使用します。この使用量を増減するには、google_columnar_engine.maintenance_cpu_percentage
(GUC)設定を調整します。詳細については、メンテナンス タスクの CPU リソースを調整するをご覧ください。