Re: Reply: Can we specify transaction level

Поиск
Список
Период
Сортировка
От bricklen
Тема Re: Reply: Can we specify transaction level
Дата
Msg-id CAGrpgQ8c1BvQ5zbssU=dt0ta7bJXV1YBVOMiZ-nLaWfjEo25qg@mail.gmail.com
обсуждение исходный текст
Ответ на Reply: Can we specify transaction level  ("guxiaobo1982" <guxiaobo1982@qq.com>)
Список pgsql-general

On Fri, Jul 19, 2013 at 5:08 PM, guxiaobo1982 <guxiaobo1982@qq.com> wrote:
what does a wrapper function mean, count is a standard function in Greenplum, or how to creat the wrapper function.

regards

On Fri, Jul 19, 2013 at 7:47 AM, guxiaobo1982 <guxiaobo1982@qq.com> wrote:
 
 There is another situation,
 
We have a demo table with about 17000000 rows,  the "select count(1) from  demotable" statement finishes with-in 3  seconds when executed directlly against the Greenplum database,but it takes about 230 seconds to finish when executed via postgres_fdw inside PostgreSQL 9.3 beta2, I guess that it may because of postgres_fdw pulling data to the PostgreSQL instance and counts the rows there, but I think the query optimizer should pass through the count() function to the Greenplum end, and gets only the result back.
 
Are you able to create a function in Greenplum which is a wrapper around that count(*) and call that via the postgres_fdw? 
 
Create a function in Greenplum like (untested, I don't have Greenplum)

create table custom_count() returns bigint as $$
    select count(*) as total from yourtable;
$$ language sql;

Then from your pg db using postgres_fdw select * from that function (which resides in Greenplum).

No idea if that'll work or make a difference though.

В списке pgsql-general по дате отправления:

Предыдущее
От: "guxiaobo1982"
Дата:
Сообщение: Reply: Can we specify transaction level
Следующее
От: "guxiaobo1982"
Дата:
Сообщение: Reply: Can we specify transaction level