Re: pass-through queries to foreign servers
От | David Gudeman |
---|---|
Тема | Re: pass-through queries to foreign servers |
Дата | |
Msg-id | CAE4YsygxpD_AytraBjZ7QArX=E=_ACtjk9G9b4BRcZRpCsmn8A@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: pass-through queries to foreign servers (David Gudeman <dave.gudeman@gmail.com>) |
Ответы |
Re: pass-through queries to foreign servers
Re: pass-through queries to foreign servers |
Список | pgsql-hackers |
For those who don't want to go to the link to see what I'm talking about with query rewrites, I thought I'd give a brief description. Foreign data wrappers currently do all of their work in the planning phase but I claim that isn't the right place to optimize foreign queries with aggregates and GROUP BY because optimizing those things would involve collapsing multiple plan node back into a single node for a foreign call. I propose to do these optimizations as query rewrites instead. So for example suppose t is a foreign table on the foreign server named fs. Then the query SELECT count(*) FROM t is rewritten to SELECT count FROM fs('select count(*) from t') fs(count bigint) where ts() is the pass-through query function for the server fs. To implement this optimization as a query rewrite, all of the elements of the result have to be real source-language constructs so the pass-through query has to be available in Postgresql SQL. My current implementation of this uses a plugin that hooks into planner_hook, but I'm hoping that I can get some support for adding the query rewriting as callback functions for the FDW system. Regards, David Gudeman http://unobtainabol.blogspot.com
В списке pgsql-hackers по дате отправления: