Search Postgresql Archives

Reply: Can we specify transaction level

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I wil test next week, but the document of postgres_fdw says it is smart enough to push executing into the external server, I wander is this a bug or a version compability problem.

---原始邮件---
在 2013年07月20日 10:05:02
"bricklen"<bricklen@xxxxxxxxx> 写道:

On Fri, Jul 19, 2013 at 5:08 PM, guxiaobo1982 <guxiaobo1982@xxxxxx> 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@xxxxxx> 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.




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux