postgres_fdw, oracle_fdw, mysql_fdw, mongo_fdw, and other Postgres foreign data wrappers — query remote systems as native tables. Ranked by GitHub stars.
Foreign data wrappers developed by Supabase
Foreign data wrapper for querying a MySQL server
Foreign data wrapper for querying a MySQL server
foreign data wrapper for Oracle access
Foreign data wrapper for querying a Redis server
Foreign data wrapper for querying a Redis server
Foreign data wrapper for querying a TDS database (Sybase or Microsoft SQL Server)
Foreign data wrapper for querying a TDS database (Sybase or Microsoft SQL Server)
foreign data wrapper for MongoDB access
SQLite Foreign Data Wrapper
aws_s3 postgres extension to import/export data from/to s3
aws_s3 postgres extension to import/export data from/to s3
foreign-data wrapper for remote hdfs servers
kafka Foreign Data Wrapper for CSV formatted messages
kafka Foreign Data Wrapper for CSV formatted messages
Fetch foreign data in Python in your PostgreSQL server.
Fetch foreign data in Python in your PostgreSQL server.
foreign-data wrapper for remote servers available over JDBC
foreign-data wrapper for remote servers available over JDBC
Foreign data wrapper for accessing remote databases using ODBC
Foreign data wrapper for accessing remote databases using ODBC
Foreign data wrapper for Firebird
Extension for querying PgBouncer stats from normal SQL views & running pgbouncer commands from normal SQL functions
Extension for querying PgBouncer stats from normal SQL views & running pgbouncer commands from normal SQL functions
Send redis pub/sub messages to Redis from PostgreSQL Directly
Send redis pub/sub messages to Redis from PostgreSQL Directly
foreign-data wrapper for remote PGSpider servers
foreign-data wrapper for remote PGSpider servers
foreign-data wrapper for Postgres log file access
foreign data wrapper for DB2 access
connect to other PostgreSQL databases from within a database
connect to other PostgreSQL databases from within a database
foreign-data wrapper for flat file access
foreign-data wrapper for remote PostgreSQL servers
A foreign data wrapper (FDW) is a Postgres extension that exposes a remote system — another database, an HTTP API, an object store, a file — as a set of foreign tables. You declare a foreign server, map credentials with a user mapping, define a foreign table schema, and then SELECT (and sometimes INSERT/UPDATE) from that table. Postgres translates the query, routes it to the remote system, and returns the rows back into your transaction. The FDW interface itself is part of core Postgres (SQL/MED standard), but each target system needs its own wrapper implementation — postgres_fdw for cross-Postgres queries, mysql_fdw, oracle_fdw, mongo_fdw, file_fdw, and dozens more.
Use an FDW when you need cross-system reads without copying data — joining Postgres tables with MySQL inventory, querying S3 Parquet files from a stored procedure, federated reads across regional databases, or one-time migrations with `INSERT INTO local SELECT FROM foreign`. FDWs are NOT a replacement for replication when you need consistent local reads or sub-millisecond latency: every query hits the remote system, and predicate pushdown quality varies wildly between wrappers. For analytical workloads at scale, look at pg_lakehouse or ParadeDB's lakehouse engine instead. For real-time replication, use logical replication or Debezium. For one-off ETL, FDWs shine.
1bench is a modern GUI client for PostgreSQL — install extensions, write queries, and inspect schemas without leaving the IDE.
Try 1bench for PostgreSQL