[pgpool-general: 1936] Re: 40% performance loss when using pgpool with postgres foreign data wrapper
Lonni J Friedman
netllama at gmail.com
Thu Jul 25 10:19:07 JST 2013
On Wed, Jul 24, 2013 at 5:19 PM, Tatsuo Ishii <ishii at postgresql.org> wrote:
>> On Tue, Jul 23, 2013 at 9:59 PM, Tatsuo Ishii <ishii at postgresql.org> wrote:
>>>> On Tue, Jul 23, 2013 at 5:42 PM, Tatsuo Ishii <ishii at postgresql.org> wrote:
>>>>> Not sure how is like your configuration. Did you actually test like this?
>>>>> pgbench/psql -> CLUSTER_A -> PG_FDW -> pgpool_B -> CLUSTER_B
>>>> Yes, that's the config that exhibited the 40% performance loss.
>>> If you try this:
>>> pgbench/psql -> pgpool_B -> CLUSTER_B
>>> How is the performance?
>> Perf is pretty good, nearly the same as:
>> pgbench/psql -> CLUSTER_A
>> Actual output:
>> Scale option ignored, using pgbench_branches table count = 10000
>> transaction type: TPC-B (sort of)
>> scaling factor: 10000
>> query mode: simple
>> number of clients: 10
>> number of threads: 10
>> duration: 3600 s
>> number of transactions actually processed: 7922742
>> tps = 2200.752746 (including connections establishing)
>> tps = 2200.760460 (excluding connections establishing)
>> It seems conclusive that pgpool is somehow not handling the FDW stuff
>> well. Can you try setting something similar up on your end, and see
>> if you can reproduce the perf loss? It doesn't require any special
>> data, just the normal default pgbench schema.
> I'll give it a try when I have spare time. At this point my wild guess
> is PG_FDW does not generate good enough query plan. Can you show
> EXPLAIN VERBOSE result?
How do I run pgbench with EXPLAIN?
More information about the pgpool-general