これらの拡張機能は、すべての AlloyDB Omni インスタンスで使用できます。これらの拡張機能を有効にするには、拡張機能を有効にするをご覧ください。
| 拡張機能 | 説明 | 
|---|---|
| alloydb_ai_nl | アプリケーションから自然言語を使用してデータを安全にクエリする関数を提供します。 | 
| alloydb_password_validation | AlloyDB Omni のパスワード ポリシーを設定および管理するための関数を提供します。 | 
| alloydb_scann | ScaNN インデックスを使用してベクトルクエリのパフォーマンスを改善するための機能を提供します。 | 
| amcheck | リレーション構造の論理的な整合性を検証する関数を提供し、 pg_amcheckアプリケーションが破損をチェックできるようにします。 | 
| anon | 個人情報(PII)や商業上のセンシティブ データを非表示にする、または置換するのに役立ちます。 | 
| auto_explain | トラブルシューティングなどのため、実行速度が遅いステートメントの実行プランを自動的にロギングします。これは、 EXPLAINコマンドの機能を自動化する手段となります。 | 
| autoinc | フィールドを自動的にインクリメントするための関数を提供します。このトリガーによって、シーケンスの次の値が整数フィールドに格納されます。 | 
| bloom | Bloom フィルタに基づくインデックス アクセス方法を提供します。 | 
| btree_gin | B-tree と同等の動作を実装するサンプル GIN 演算子クラスを提供します。 | 
| btree_gist | B-tree と同等の動作を実装する GiST インデックス演算子クラスを提供します。 | 
| citext | 大文字と小文字を区別しない文字列型 citextを提供します。 | 
| cube | 多次元キューブを表すためのデータ型 cubeを実装します。 | 
| dblink | データベース セッション内から PostgreSQL データベースに接続する関数を提供します。 | 
| dict_int | 整数のインデックス作成を制御する、全文検索用のアドオン辞書テンプレート。 | 
| dict_xsyn | 文字列のインデックス作成を制御する、全文検索用のアドオン辞書テンプレート。 | 
| earthdistance | 地球上の大圏距離を計算する 2 つの方法を提供します。 | 
| fuzzystrmatch | 文字列間の類似性と相違性を特定するためのいくつかの関数を提供します。 | 
| google_columnar_engine | AlloyDB Omni のカラム型エンジン機能を提供します。これは、HTAP(ハイブリッド トランザクション分析処理)および OLAP(オンライン分析処理)ワークロードの処理効率を大幅に向上させます。 | 
| google_db_advisor | AlloyDB Omni のインデックス アドバイザー機能を提供します。これは、クエリ処理を高速化するためにどのインデックスを作成すればよいかを提案します。 | 
| google_ml_integration | Vertex AI 予測エンドポイントにアクセスして SQL で予測を取得するために使用する関数を提供します。 | 
| hstore | 単一の PostgreSQL 値に Key-Value ペアのセットを格納するための hstoreデータ型を実装します。 | 
| hypopg | 仮想インデックスのサポートを提供します。 | 
| insert_username | 現在のユーザーの名前をテキスト フィールドに保存するための関数を提供します。この関数を使用して、データベース テーブルの行を最後に変更したユーザーを追跡できます。 | 
| intagg | 整数型のアグリゲータと列挙子を提供します。 | 
| intarray | null を含まない整数配列の操作やそれらに対するインデックス検索を行う関数と演算子のセットを提供します。 | 
| ip4r | IPv4 / v6 のアドレスとアドレス範囲、およびインデックスのサポートに対応するデータ型を提供します。 | 
| isn | 一部の国際製品番号付け規則に対応するデータ型を提供します。 | 
| lo | 大きいオブジェクト(LO や BLOB とも呼ばれる)を管理するためのサポート。 | 
| ltree | 格納されているデータのラベルを階層型ツリー構造で表すためのデータ型 ltreeを実装します。 | 
| moddatetime | 現在の日時を timestampフィールドに格納するための関数を提供します。この関数を使用して、データベース テーブルの行が最後に変更された日時を追跡できます。 | 
| pageinspect | データベース ページのコンテンツを低レベルで検査します。 | 
| pg_bigm | 2 グラム(バイグラム)インデックスを使用して PostgreSQL での全文検索を高速化する機能を提供します。 | 
| parameterized_views | 自然言語クエリが SQL クエリに変換されるときにセキュリティ レイヤを追加する関数を提供します。この拡張機能は、 alloydb_ai_nl拡張機能と連携して機能します。 | 
| pg_buffercache | 共有バッファ キャッシュ内でリアルタイムで発生していることを調査する方法を提供します。 | 
| pg_cron | データベース内で拡張機能として実行される、PostgreSQL 用の cron ベースのジョブ スケジューラを提供します。構文は通常の cronと同じですが、データベースから直接 PostgreSQL コマンドをスケジュールできます。 | 
| pg_freespacemap | 空き領域マップ(FSM)を調べます。 | 
| pg_hint_plan | SQL コメントの簡単な説明であるヒントを使用して、PostgreSQL の実行プランを改善できます。 | 
| pg_ivm | PostgreSQL に増分ビュー メンテナンス(IVM)機能を提供します。 | 
| pg_partman | 時間ベースおよびシリアル番号ベースのテーブル パーティション セットを作成して管理できます。 | 
| pg_prewarm | 関連データをオペレーティング システムのバッファ キャッシュ、または PostgreSQL バッファ キャッシュのいずれかに読み込むための便利な方法を提供します。 | 
| pg_proctab | AlloyDB Omni で pg_top を使用し、オペレーティング システムのプロセス テーブルからレポートを生成できます。 | 
| pg_repack | テーブルとインデックスから肥大化した部分を削除できます。必要に応じて、オンライン CLUSTER(cluster index 順にテーブルを並べ替える)を実行できます。 | 
| pg_similarity | PostgreSQL で類似性クエリをサポートします。 | 
| pg_squeeze | テーブルから未使用のスペースを削除します。必要に応じて、インデックスを使用してテーブルのレコードまたは行(タプル)を並べ替えることもできます。 | 
| g_stats | パフォーマンス スナップショットを比較してデータベースのパフォーマンスを最適化できます。 | 
| pg_stat_statements | 実行されたすべての SQL ステートメントの実行統計を追跡する方法を提供します。 | 
| pg_surgery | 関連データに対して低レベルの操作を実行する関数を提供します。この低レベルツールは、ほかに手段がない場合にのみ、慎重に使用してください。 | 
| pg_trgm | トライグラム照合により英数字の類似性を判断する関数と演算子を提供します。また、類似文字列の高速検索をサポートするインデックス演算子クラスも提供します。 | 
| pg_visibility | テーブルの可視性マップ(VM)とページレベルの可視性情報を検査する手段を提供します。 | 
| pg_wait_sampling | 待機イベントのサンプリング統計情報を収集する機能を提供します。 | 
| pgaudit | PostgreSQL に用意された標準ロギング機能を使用して、詳細なセッション監査ロギングとオブジェクト監査ロギングを提供します。 | 
| pgcrypto | PostgreSQL に対応する暗号機能を提供します。 | 
| pgfincore | オペレーティング システムのディスク キャッシュ メモリ内のページを PostgreSQL から管理するための一連の関数。 | 
| pglogical | パブリッシュ / サブスクライブ モデルを使用して、PostgreSQL の論理ストリーミング レプリケーションを提供します。 AlloyDB Omni には、 | 
| pgrowlocks | 指定した表の行のロック情報を提供します。 | 
| pgstattuple | タプルレベルの統計情報を取得する、さまざまな関数を提供します。 | 
| pgtap | PL/pgSQL と PL/SQL で記述された、PostgreSQL の単体テスト フレームワークを提供します。 | 
| pgtt | データベースにグローバル一時テーブルのサポートを追加します。 | 
| vector | 標準の pgvectorPostgreSQL 拡張機能を AlloyDB Omni 用にカスタマイズしたものをvectorと呼びます。これは、生成されたエンベディングのベクトル列への格納、ベクトル最適化インデックスの生成、ベクトル エンベディングの検索をサポートしています。 | 
| plpgsql | 関数、プロシージャ、トリガー作成用の読み込み可能なプロシージャル言語。この言語を使用して、 DOブロック内のコードを直接実行することもできます。 | 
| plproxy | PostgreSQL データベース間でのリモート プロシージャ コールを可能にするプロシージャル言語ハンドラ。オプションでシャーディングを含みます。 | 
| plv8 | JavaScript を有効にするためのプロシージャル言語を提供します。 | 
| postgres_fdw | 外部 PostgreSQL サーバーに保存されているデータへのアクセスに使用できる外部データラッパーを提供します。 | 
| postgresql-hll | 新しいデータ型 hllを導入します。これは HyperLogLog データ構造です。 | 
| prefix | プレフィックス マッチングとインデックス サポートを提供します。 | 
| refint | 外部キーの制約、参照テーブル、被参照テーブルをチェックする関数が含まれています。 | 
| sslinfo | 現在のクライアントがインスタンスに接続したときに提供した SSL 証明書に関する情報を提供します。 | 
| tablefunc | テーブル(複数行)を返すさまざまな関数を提供します。 | 
| tcn | データベース テーブルの内容の変更をリスナーに通知するトリガー関数を提供します。 | 
| temporal_tables | 時系列テーブルをサポートします。データベース内の時系列テーブルには、行が有効な期間が記録されます。 | 
| tsm_system_rows | SELECT コマンドの TABLESAMPLE 句で使用できるテーブル サンプリング メソッド SYSTEM_ROWS を提供します。 | 
| tsm_system_time | SELECT コマンドの TABLESAMPLE 句で使用できるテーブル サンプリング メソッド SYSTEM_TIME を提供します。 | 
| unaccent | 語彙素からアクセントやその他の発音区別符号を削除するテキスト検索辞書。 | 
| uuid-ossp | 標準アルゴリズムの 1 つを使用して Universally Unique Identifier(UUID)を生成する関数を提供します。 | 
論理デコーディング プラグイン
AlloyDB Omni は、上記の拡張機能に加えて、pglogical 拡張機能によってこの拡張機能のストリーミング出力のフォーマットに使用される以下のプラグインをサポートしています。
| プラグイン | 説明 | 
|---|---|
| decoderbufs | ストリーミング データを [プロトコル バッファ] としてフォーマットします。 | 
| pgoutput | PostgreSQL の組み込み論理デコーディング プラグイン。 | 
| test_decoding | ストリーミング データをテキスト形式にフォーマットします。 | 
| wal2json | ストリーミング データを JSON としてフォーマットします。 | 
PostGIS 拡張機能
以下の PostGIS 拡張機能は、サポートされてはいますが、AlloyDB Omni には含まれていません。
- postgis
- postgis_raster
- postgis_sfcgal
- postgis_tiger_geocoder
- postgis_topology
- address_standardizer
- address_standardizer_data_us
詳細については、AlloyDB Omni 用に PostGIS をインストールするをご覧ください。
Orafce 拡張機能
AlloyDB Omni には Orafce 拡張機能は含まれていませんが、AlloyDB Omni 用に Orafce をインストールするの手順に沿って既存の AlloyDB Omni インストールに Orafce を手動で追加することで、Oracle データベースから追加の関数と演算子を取得できます。
拡張機能を有効にする
拡張機能を有効にする手順は次のとおりです。
- AlloyDB Omni クラスタのプライマリ インスタンスでデータベースに接続します。 
- CREATE EXTENSIONコマンドを実行します。たとえば、プライマリ インスタンスに接続した後、- psqlを使用して- citext拡張機能を有効にできます。- mydatabase=> CREATE EXTENSION IF NOT EXISTS citext;- mydatabase=> CREATE EXTENSION IF NOT EXISTS citext;
- データベースを再起動して、拡張機能が使用可能であることを確認します。 
拡張機能の共有ライブラリを PostgreSQL に追加する
拡張機能の共有ライブラリを PostgreSQL に追加するには、DBCluster マニフェストで shared_preload_libraries データベース フラグを更新する必要があります。
この操作を行う方法の詳細な手順については、Kubernetes クラスタ上の AlloyDB Omni でパラメータを更新するをご覧ください。