Re: How to run in parallel in Postgres - Mailing list pgsql-performance

From Laurenz Albe
Subject Re: How to run in parallel in Postgres
Date
Msg-id 65371f0819be9dc954fdece32e9df30d1c5aa39e.camel@cybertec.at
Whole thread Raw
In response to How to run in parallel in Postgres  (Lars Aksel Opsahl <Lars.Opsahl@nibio.no>)
Responses Re: How to run in parallel in Postgres  (Lars Aksel Opsahl <Lars.Opsahl@nibio.no>)
Re: How to run in parallel in Postgres, EXECUTE_PARALLEL  (Lars Aksel Opsahl <Lars.Opsahl@nibio.no>)
List pgsql-performance
On Thu, 2019-12-05 at 12:10 +0000, Lars Aksel Opsahl wrote:
> have a function that prepares data, so the big job can be run it in parallel. 
> 
> Today I have solved this by using "Gnu parallel" like this.
> psql testdb -c"\! psql -t -q -o /tmp/run_cmd.sql testdb -c\"SELECT
find_overlap_gap_make_run_cmd('sl_lop.overlap_gap_input_t1','geom',4258,'sl_lop.overlap_gap_input_t1_res',50);\";
parallel-j 4 
 
> psql testdb -c :::: /tmp/run_cmd.sql" 2>> /tmp/analyze.log;
> 
> The problem here is that I depend on external code which may not be installed. 
> 
> Since Postgres now supports parallel I was wondering if it's easy to trigger parallel dynamically created SQL calls.
> 
> If you look at
https://github.com/larsop/find-overlap-and-gap/blob/master/src/test/sql/regress/find_overlap_and_gap.sql you see that
 
> find_overlap_gap_make_run_cmd generates as set of 28 sql calls. 
> 
> So is it in a simple way possible to use Postgres parallel functionality to call this 28 functions i parallel so I
don'thave dependent on externally install programs  ?
 
> 
> When this 28 sql calls are done, the find_overlap_gap_make_run_cmd may continue to the next step of work. So the
functionthat triggers parallel calls wait for them complete and then may start on
 
> the next step of work.

You cannot run several queries in parallel in a PostgreSQL function.

You may want to have a look at PL/Proxy which might be used for things like that.

Yours,
Laurenz Albe
-- 
Cybertec | https://www.cybertec-postgresql.com




pgsql-performance by date:

Previous
From: Lars Aksel Opsahl
Date:
Subject: How to run in parallel in Postgres
Next
From: Mike Schanne
Date:
Subject: autovacuum locking question