このページでは、自動列化を使用して、列エンジンの列ストアのコンテンツを管理する方法について説明します。
自動列化を使用すると、カラム型エンジンは列ストア内のデータを自動的に列化します。これにより、ハイブリッド トランザクション処理と分析処理(HTAP)ワークロードとオンライン分析処理(OLAP)ワークロードの全体的なパフォーマンスが向上します。
カラム型エンジンは、アプリケーション ワークロードをサンプリングし、クエリを分析して、列ストアに含める候補として適切な列を特定します。また、現在の列ストアのメモリサイズを考慮して、パフォーマンスの向上が最も大きい列ストアに列が自動的に入力されます。
新しいインスタンスでは、自動列化がデフォルトで有効になっています。列ストアに列を推奨して入力するように、1 時間に 1 回構成されています。自動列化をすぐに実行するか、デフォルトのスケジュール(毎時)を変更して、自動列化を実行する所望の時間間隔に設定できます。
インスタンスが再起動すると、カラム型エンジンは、以前に推奨され、入力された列を消去し、自動列化を再開します。
自動列化によって列が推奨されたら、推奨された列を表示して、推奨の結果を確認できます。
自動カラム化をすぐに実行する
デフォルトのスケジュールが有効になる直前に自動列化を実行できます。
自動カラム化をすぐに実行するには:
psql クライアント
SELECT google_columnar_engine_recommend();
自動列化のデフォルトのスケジュールを変更する
自動列化を実行するようにインスタンスのデフォルトのスケジュールを変更するには、そのインスタンスの google_columnar_engine.auto_columnarization_schedule
フラグを新しい時間間隔に設定します。
このフラグは値 EVERY NUMBER {HOURS|DAYS}
を取ります。例: EVERY 12 HOURS
、EVERY 2 DAYS
。
データベース フラグの設定の詳細については、インスタンスのデータベース フラグを構成するをご覧ください。
推奨される列に関する情報を表示する
推奨される列のサイズ、推奨される列のリスト、推奨事項のスケジュールに関する情報を確認できます。
推奨される列のリストを表示するには:
psql クライアント
SELECT database_name, schema_name, relation_name, column_name FROM g_columnar_recommended_columns;
列の推奨事項のスケジュールを表示するには:
psql クライアント
SELECT * FROM g_columnar_schedules;
自動列化をリセットして推奨列を削除する
自動列化は、推奨事項の生成に収集したすべてのデータを含む、リセットできます。
これにより、自動列化によって列ストアに自動的に追加された列が削除されます。
自動カラム化をリセットするには:
psql クライアント
SELECT google_columnar_engine_reset_recommendation(drop_columns => true);
列ストアのメモリサイズを推奨する
列エンジンは、パフォーマンスの向上が最も大きいワークロードの列のリストとともに、最適な列ストア メモリサイズを推奨できます。
推奨事項に基づいて google_columnar_engine.memory_size_in_mb
を更新できます。
列ストアのメモリサイズを推奨するには:
psql クライアント
SELECT * FROM google_columnar_engine_recommend(mode => 'RECOMMEND_SIZE');
自動列化を無効にする
プライマリ インスタンスまたは読み取りプール インスタンスで自動列化を無効にするには、インスタンスの google_columnar_engine.enable_auto_columnarization
フラグを off
に設定します。
データベース フラグの設定の詳細については、インスタンスのデータベース フラグを構成するをご覧ください。