Re: Rename max_parallel_degree? - Mailing list pgsql-hackers
From | Robert Haas |
---|---|
Subject | Re: Rename max_parallel_degree? |
Date | |
Msg-id | CA+TgmoZd2H0++ssHzuxfCxRJfyzUYJPooApaExxLxepwatTmVA@mail.gmail.com Whole thread Raw |
In response to | Re: Rename max_parallel_degree? (Tom Lane <tgl@sss.pgh.pa.us>) |
Responses |
Re: Rename max_parallel_degree?
(Magnus Hagander <magnus@hagander.net>)
Re: Rename max_parallel_degree? ("Daniel Verite" <daniel@manitou-mail.org>) Re: Rename max_parallel_degree? ("David G. Johnston" <david.g.johnston@gmail.com>) |
List | pgsql-hackers |
On Sun, Apr 24, 2016 at 2:42 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > Magnus Hagander <magnus@hagander.net> writes: >> On Sun, Apr 24, 2016 at 8:23 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: >>> FWIW, I agree with Bruce that using "degree" here is a poor choice. >>> It's an unnecessary dependence on technical terminology that many people >>> will not be familiar with. > >> FWIW, SQL Server calls it "degree of parallelism" as well ( >> https://technet.microsoft.com/en-us/library/ms188611(v=sql.105).aspx). And >> their configuration option is "max degree of parallelism": >> https://technet.microsoft.com/en-us/library/ms181007(v=sql.105).aspx. > > Yes, but both they and Oracle appear to consider "degree" to mean the > total number of processors used, not the number of secondary jobs in > addition to the main one. The only thing worse than employing obscure > technical terminology is employing it incorrectly: that way, you get to > confuse both the users who know what it means and those who don't. This is not so clear-cut as you are making it out to be. For example, see http://www.akadia.com/services/ora_parallel_processing.html - viz "The number of parallel slave processes associated with an operation is called its degree of parallelism", which is pretty close to what the parameter currently called max_parallel_degree actually does. See also http://searchitchannel.techtarget.com/feature/Using-parallel-SQL-to-improve-Oracle-database-performance - "The Degree of Parallelism (DOP) defines the number of parallel streams of execution that will be created. In the simplest case, this translates to the number of parallel slave processes enlisted to support your SQL's execution. However, the number of parallel processes is more often twice the DOP. This is because each step in a nontrivial execution plan needs to feed data into the subsequent step, so two sets of processes are required to maintain the parallel stream of processing." Other sources disagree, of course, as is often the case with Oracle. Wahoo. Of course, we could make this value 1-based rather than 0-based, as Peter Geoghegan suggested a while back. But as I think I said at the time, I think that's more misleading than helpful. The leader participates in the parallel plan, but typically does far less of the work beneath the Gather node than the other nodes involved in the query, often almost none. In short, the leader is special. Pretending that it's just another process involved in the parallel group isn't doing anyone a favor. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
pgsql-hackers by date: