外部テーブル(Foreign tables)
PostgreSQLの概念で、FDWを通じて外部のデータに対応づけられたテーブル定義。通常は読み取り専用だが、書き込みに対応するFDWもある。クエリからはローカルテーブルのように見え、アクセス時に外部ソースへ解決される。
CREATE FOREIGN TABLE remote_users (id int, name text) SERVER mysql_server OPTIONS (table_name 'users') のように定義する。外部テーブルへのSELECTは、MySQLにJDBCクエリを送って結果セットを返す。IMPORT FOREIGN SCHEMA を使えば、ソース側の全テーブルに対応する外部テーブルを自動作成できる。
PostgreSQLは外部データをキャッシュせず、問い合わせのたびに最新を取りに行く。Postgres 17以降では、pgvectorと組み合わせて外部ソースへのベクトル検索もできる。大量の外部テーブルを引くとネットワークがボトルネックになり、性能は悪い。