サポートされているデータベース拡張機能

次の表に、AlloyDB Omni 15.7.0 でサポートされているすべての拡張機能を示します。

これらの拡張機能は、すべての AlloyDB Omni インスタンスで使用できます。これらの機能を有効にするには、拡張機能を有効にするをご覧ください。

拡張機能 説明
amcheck リレーション構造の論理的な整合性を検証する関数を提供し、pg_amcheck アプリケーションが破損をチェックできるようにします。
anon 個人情報(PII)や商業上の機密データを非表示または置換するのに役立ちます。
auto_explain トラブルシューティングなどのため、実行速度が遅いステートメントの実行プランを自動的にロギングします。EXPLAIN コマンドの機能を自動的に実行します。
autoinc フィールドを自動的にインクリメントするための関数を提供します。このトリガーによって、シーケンスの次の値が整数フィールドに格納されます。
bloom ブルーム フィルタに基づくインデックス アクセス方法を提供します。
btree_gin B-tree と同等の動作を実装するサンプル GIN 演算子クラスを提供します。
btree_gist B-tree と同等の動作を実装する GiST インデックス演算子クラスを提供します。
citext 大文字と小文字を区別しない文字列型 citext を提供します。
cube 多次元キューブを表すためのデータ型 cube を実装します。
dblink データベース セッション内から PostgreSQL データベースに接続する関数を提供します。
dict_int 整数のインデックス作成を制御する、全文検索用のアドオン辞書テンプレート。
earthdistance 地球上の大圏距離を計算する 2 つの方法を提供します。
fuzzystrmatch 文字列間の類似性と相違性を特定するためのいくつかの関数を提供します。
google_columnar_engine AlloyDB Omni のカラム型エンジン機能を提供します。これは、HTAP(ハイブリッド トランザクション分析処理)と OLAP(オンライン分析処理)ワークロードを非常に効率的に処理します。
google_db_advisor AlloyDB Omni のインデックス アドバイザー機能を提供します。この機能は、クエリ処理を高速化するためのインデックスを推奨します。
google_ml_integration Vertex AI 予測エンドポイントにアクセスして SQL で予測を取得するために使用する関数を提供します。
hstore 1 つの PostgreSQL 値に Key-Value ペアのセットを格納するための hstore データ型を実装します。
hypopg 仮想インデックスをサポートします。
insert_username 現在のユーザーの名前をテキスト フィールドに保存するための関数を提供します。この関数を使用すると、データベース テーブルの行を最後に変更したユーザーを追跡できます。
intagg 整数型のアグリゲータと列挙子を提供します。
intarray null を含まない整数の配列を操作し、インデックス検索を行う関数と演算子のセットを提供します。
ip4r IPv4 と v6 のアドレス、アドレス範囲に加え、インデックスのサポートに対応するデータ型を提供します。
isn 一部の国際製品番号付け規則に対応するデータ型を提供します。
lo 大きいオブジェクトを管理するためのサポート(LO や BLOB とも呼ばれる)。
ltree 格納されているデータのラベルを階層型ツリー構造で表すためのデータ型 ltree を実装します。
moddatetime 現在の時刻を timestamp フィールドに格納するための関数を提供します。この関数を使用すると、データベース テーブル内の行が最後に変更された時刻を追跡できます。
pageinspect データベース ページのコンテンツを低レベルで検査します。
pg_auto_failover PostgreSQL クラスタの自動フェイルオーバーをモニタリングして管理します。シンプルさと正確性を重視して最適化されており、PostgreSQL 10 以降をサポートしています。
pg_bigm 2 グラム(バイグラム)インデックスを使用して PostgreSQL で全文検索機能を提供します。これにより、全文検索の速度が向上します。
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 テーブルから未使用のスペースを削除します。必要に応じて、インデックスを使用してテーブルのレコードまたは行(タプル)を並べ替えることもできます。
pg_stat_statements 実行されたすべての SQL ステートメントの実行統計を追跡する方法を提供します。
pg_trgm トライグラム照合により英数字の類似性を判断する関数と演算子を提供します。また、類似文字列の高速検索をサポートするインデックス演算子クラスも提供します。
pg_visibility テーブルの可視性マップ(VM)とページレベルの可視性情報を検査する手段を提供します。
pg_wait_sampling 待機イベントのサンプリング統計情報を収集する機能を提供します。
pgaudit PostgreSQL が提供する標準ロギング機能を使用して、詳細なセッションとオブジェクト監査ロギングを提供します。AlloyDB Omni の pgaudit は、logging_collector パラメータが有効になっていると機能しません。
pgcrypto PostgreSQL に対応する暗号機能を提供します。
pgfincore オペレーティング システムのディスク キャッシュ メモリ内のページを PostgreSQL から管理するための一連の関数。
pglogical

パブリッシュ/サブスクライブ モデルを使用して、PostgreSQL の論理ストリーミング レプリケーションを提供します。

AlloyDB Omni には、pglogical 拡張機能で使用される多数のプラグインが含まれています。

pgrowlocks 指定した表の行のロック情報を提供します。
pgstattuple タプルレベルの統計情報を取得する、さまざまな関数を提供します。
pgtap PL/pgSQL と PL/SQL で記述された、PostgreSQL の単体テスト フレームワークを提供します。
pgtt データベースにグローバル一時テーブルのサポートを追加します。
vector 標準の pgvector PostgreSQL 拡張機能は 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

語彙素からアクセントやその他の発音区別符号を削除するテキスト検索辞書。

PostgreSQL 15 互換データベースでこの拡張機能を使用するには、 データベースの作成時に libcLOCALE_PROVIDER を指定します。AlloyDB Omni では、PostgreSQL 15 互換データベースとデフォルトの ICU ロケール プロバイダでこの拡張機能を使用することはできません。

uuid-ossp 標準アルゴリズムの 1 つを使用して Universally Unique Identifier(UUID)を生成する関数を提供します。

論理デコード プラグイン

AlloyDB Omni は、このページで前述の拡張機能に加えて、pglogical 拡張機能で拡張機能のストリーミング出力のフォーマットに使用される次のプラグインをサポートしています。

プラグイン 説明
[decoderbufs] ストリーミング データを [プロトコル バッファ] としてフォーマットします。
[pgoutput] PostgreSQL の組み込み論理デコーディング プラグイン。
[test-decoding] ストリーミングされたデータをテキスト形式に変換します。
[wal2json] ストリーミングされたデータを JSON としてフォーマットします。

PostGIS 拡張機能

次の PostGIS 拡張機能はサポートされていますが、AlloyDB Omni には含まれていません。

詳細については、AlloyDB Omni 用に PostGIS をインストールするをご覧ください。

Orafce 拡張機能

AlloyDB Omni には Orafce 拡張機能は含まれていませんが、AlloyDB Omni に Orafce をインストールするの手順に沿って、既存の AlloyDB Omni インストールに手動で追加して、Oracle データベースから追加の関数と演算子を取得できます。

拡張機能を有効にする

拡張機能を有効にする手順は次のとおりです。

  1. AlloyDB Omni クラスタのプライマリ インスタンスでデータベースに接続します。

  2. CREATE EXTENSION コマンドを実行します。たとえば、プライマリ インスタンスに接続した後、psql を使用して citext 拡張機能を有効にできます。

    mydatabase=> CREATE EXTENSION IF NOT EXISTS citext;
    
  3. pg_stat_statements 拡張機能を有効にする場合は、次のコマンドを実行します。

    # ALTER SYSTEM SET shared_preload_libraries=<whatever you want>,pg_stat_statements;
    
  4. データベースを再起動して、拡張機能が使用可能であることを確認します。