Joe, have you heard of a standard called SQL/MED? I came across a
description of it the other day. You might think it's got some medical
connotation, but actually the acronym is Management of External Data,
and what it is is a standard spec for shipping chunks of SQL queries to
remote servers. For instance, given
SELECT * FROM a.foo, b.bar WHERE ...
where a.foo is on a remote machine, the spec lays down how the local and
remote servers can cooperate to execute this query intelligently ---
including deciding where to execute various WHERE clauses to minimize
the amount of data shipped. (The article I found was actually about
how the new draft version of SQL/MED improves the protocol to let this
sort of thing be done better; it seems the original spec only allowed
retrieval of a whole table's contents.)
This looks like it might be a great long-term replacement for dblink,
and if it is standard, so much the better.
I imagine the draft version of the new SQL/MED spec may be available on
the web, but haven't gone looking.
Just a heads-up in case you are interested...
regards, tom lane