you didnt answer your own question. is it a secret weapon?
you didnt answer your own question. is it a secret weapon?
In particular, we really like the feature of foreign data wrappers, and it forms the basis of one of our core abstractions ("mounting" upstream data) [0]. We've added a lot of scaffolding to make writing and using FDWs easier with a Splitgraph engine (which is just Postgres with the Splitgraph library loaded into it). You can also IMPORT from upstream sources using Splitfiles, to pack the data into a versioned “image” (analogous to Dockerfiles and docker images).
As for whether they're a secret weapon? Well, they're not so secret, but it does seem like they're underutilized considering the power they grant. We certainly like them.
[0] I wrote a post today about how we use a Socrata FDW to "mount" 40k+ government datasets, making them all available via SQL: https://www.splitgraph.com/blog/40k-sql-datasets
They are indeed powerful and underutilized. They also go by different names in other RDBMSes (proxy tables, linked servers, remote tables, virtual tables, etc.). If I remember correctly, SQL Anywhere 6 released in 1998 was the first rich implementation [1] of "proxy tables" to "remote servers" and Microsoft soon followed with "Linked Servers". The embedded database libraries (Apache Derby and SQLite) added rich APIs/SPIs to create virtual table plugins like SQLite's FTS.
Using remote tables for federated queries across heterogenous data sources, and for access to non-relational data sources, is a well established technique and a powerful "weapon" for those who know how to wield it. It might not be PostgreSQL's secret weapon but it may very well be Splitgraph's.
[1] http://dcx.sap.com/index.html#1001/en/dbwnen10/wn-remote-new...
> However, to access non-Oracle systems you must use Oracle Heterogeneous Services.
[1] https://docs.oracle.com/cd/A57673_01/DOC/server/doc/SQL73/ch...