Re: Parallel query execution
От
Stephen Frost
Тема
Re: Parallel query execution
Дата
Msg-id
20130115231557.GB16126@tamriel.snowman.net
Ответ на
Re: Parallel query execution (Gavin Flower)
Список
Дерево обсуждения
Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Stephen Frost <sfrost@snowman.net>
Re: Parallel query execution Gavin Flower <GavinFlower@archidevsys.co.nz>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Stephen Frost <sfrost@snowman.net>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Claudio Freire <klaussfreire@gmail.com>
Re: Parallel query execution Stephen Frost <sfrost@snowman.net>
Re: Parallel query execution Claudio Freire <klaussfreire@gmail.com>
Re: Parallel query execution Stephen Frost <sfrost@snowman.net>
Re: Parallel query execution Claudio Freire <klaussfreire@gmail.com>
Re: Parallel query execution Stephen Frost <sfrost@snowman.net>
Re: Parallel query execution Claudio Freire <klaussfreire@gmail.com>
Re: Parallel query execution Josh Berkus <josh@agliodbs.com>
Re: Parallel query execution Stephen Frost <sfrost@snowman.net>
Re: Parallel query execution Josh Berkus <josh@agliodbs.com>
Re: Parallel query execution Michael Paquier <michael.paquier@gmail.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Alvaro Herrera <alvherre@2ndquadrant.com>
Re: Parallel query execution Tom Lane <tgl@sss.pgh.pa.us>
CF3+4 (was Re: Parallel query execution) Abhijit Menon-Sen <ams@2ndQuadrant.com>
Re: CF3+4 (was Re: Parallel query execution) Simon Riggs <simon@2ndquadrant.com>
Re: CF3+4 (was Re: Parallel query execution) Alvaro Herrera <alvherre@2ndquadrant.com>
Re: CF3+4 (was Re: Parallel query execution) Stephen Frost <sfrost@snowman.net>
Re: CF3+4 Abhijit Menon-Sen <ams@2ndQuadrant.com>
Re: CF3+4 Stephen Frost <sfrost@snowman.net>
Re: CF3+4 Tom Lane <tgl@sss.pgh.pa.us>
Re: CF3+4 Josh Berkus <josh@agliodbs.com>
Re: CF3+4 Tom Lane <tgl@sss.pgh.pa.us>
Re: CF3+4 Peter Eisentraut <peter_e@gmx.net>
Re: CF3+4 Tom Lane <tgl@sss.pgh.pa.us>
Re: CF3+4 Bruce Momjian <bruce@momjian.us>
Re: CF3+4 Simon Riggs <simon@2ndQuadrant.com>
Re: CF3+4 Tom Lane <tgl@sss.pgh.pa.us>
Re: CF3+4 Abhijit Menon-Sen <ams@2ndQuadrant.com>
Re: CF3+4 Craig Ringer <craig@2ndQuadrant.com>
Re: CF3+4 Michael Paquier <michael.paquier@gmail.com>
Re: CF3+4 Abhijit Menon-Sen <ams@2ndQuadrant.com>
Re: CF3+4 Magnus Hagander <magnus@hagander.net>
Re: CF3+4 Craig Ringer <craig@2ndQuadrant.com>
Re: CF3+4 Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Craig Ringer <craig@2ndQuadrant.com>
Re: CF3+4 (was Re: Parallel query execution) Craig Ringer <craig@2ndQuadrant.com>
Re: CF3+4 (was Re: Parallel query execution) Josh Berkus <josh@agliodbs.com>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Craig Ringer <craig@2ndQuadrant.com>
Re: CF3+4 (was Re: Parallel query execution) Magnus Hagander <magnus@hagander.net>
Re: CF3+4 (was Re: Parallel query execution) Pavan Deolasee <pavan.deolasee@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Magnus Hagander <magnus@hagander.net>
Re: CF3+4 (was Re: Parallel query execution) Jeff Janes <jeff.janes@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Simon Riggs <simon@2ndQuadrant.com>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Pavel Stehule <pavel.stehule@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Jeff Janes <jeff.janes@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Heikki Linnakangas <hlinnakangas@vmware.com>
Re: CF3+4 (was Re: Parallel query execution) Josh Berkus <josh@agliodbs.com>
Re: CF3+4 (was Re: Parallel query execution) Tom Lane <tgl@sss.pgh.pa.us>
Re: CF3+4 (was Re: Parallel query execution) Bruce Momjian <bruce@momjian.us>
Re: CF3+4 (was Re: Parallel query execution) Josh Berkus <josh@agliodbs.com>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Tom Lane <tgl@sss.pgh.pa.us>
Re: CF3+4 (was Re: Parallel query execution) Andrew Dunstan <andrew@dunslane.net>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Dimitri Fontaine <dimitri@2ndQuadrant.fr>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Josh Berkus <josh@agliodbs.com>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Phil Sorber <phil@omniti.com>
Re: CF3+4 (was Re: Parallel query execution) Pavan Deolasee <pavan.deolasee@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Tom Lane <tgl@sss.pgh.pa.us>
Re: CF3+4 (was Re: Parallel query execution) Andrew Dunstan <andrew@dunslane.net>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Andres Freund <andres@2ndquadrant.com>
Re: CF3+4 (was Re: Parallel query execution) Josh Berkus <josh@agliodbs.com>
Re: CF3+4 (was Re: Parallel query execution) "Joshua D. Drake" <jd@commandprompt.com>
Re: CF3+4 (was Re: Parallel query execution) Stephen Frost <sfrost@snowman.net>
Re: CF3+4 (was Re: Parallel query execution) Heikki Linnakangas <hlinnakangas@vmware.com>
Re: CF3+4 (was Re: Parallel query execution) Stephen Frost <sfrost@snowman.net>
Re: CF3+4 (was Re: Parallel query execution) Amit Kapila <amit.kapila@huawei.com>
Re: CF3+4 (was Re: Parallel query execution) Pavel Stehule <pavel.stehule@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Phil Sorber <phil@omniti.com>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Pavan Deolasee <pavan.deolasee@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Pavan Deolasee <pavan.deolasee@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Pavel Stehule <pavel.stehule@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Dimitri Fontaine <dimitri@2ndQuadrant.fr>
Re: CF3+4 (was Re: Parallel query execution) Gavin Flower <GavinFlower@archidevsys.co.nz>
Re: CF3+4 (was Re: Parallel query execution) Phil Sorber <phil@omniti.com>
Re: CF3+4 (was Re: Parallel query execution) Dimitri Fontaine <dimitri@2ndQuadrant.fr>
Re: CF3+4 (was Re: Parallel query execution) Magnus Hagander <magnus@hagander.net>
Re: CF3+4 (was Re: Parallel query execution) Abhijit Menon-Sen <ams@2ndQuadrant.com>
Re: CF3+4 (was Re: Parallel query execution) Boszormenyi Zoltan <zb@cybertec.at>
Re: CF3+4 (was Re: Parallel query execution) Phil Sorber <phil@omniti.com>
Re: CF3+4 (was Re: Parallel query execution) Robert Haas <robertmhaas@gmail.com>
Re: CF3+4 (was Re: Parallel query execution) Magnus Hagander <magnus@hagander.net>
Re: CF3+4 (was Re: Parallel query execution) Noah Misch <noah@leadboat.com>
CF Progress or the lack thereof Andres Freund <andres@2ndquadrant.com>
Re: Parallel query execution Stephen Frost <sfrost@snowman.net>
Re: Parallel query execution Robert Haas <robertmhaas@gmail.com>
Re: Parallel query execution Daniel Farina <daniel@heroku.com>
Re: Parallel query execution Stephen Frost <sfrost@snowman.net>
Re: Parallel query execution Noah Misch <noah@leadboat.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Andrew Dunstan <andrew@dunslane.net>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Andrew Dunstan <andrew@dunslane.net>
Re: Parallel query execution Michael Paquier <michael.paquier@gmail.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Stephen Frost <sfrost@snowman.net>
Re: Parallel query execution Pavel Stehule <pavel.stehule@gmail.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution "Dickson S. Guedes" <listas@guedesoft.net>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Jeff Janes <jeff.janes@gmail.com>
Re: Parallel query execution Jeff Janes <jeff.janes@gmail.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Claudio Freire <klaussfreire@gmail.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Jeff Janes <jeff.janes@gmail.com>
Re: Parallel query execution Claudio Freire <klaussfreire@gmail.com>
Re: Parallel query execution Paul Ramsey <pramsey@cleverelephant.ca>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Simon Riggs <simon@2ndQuadrant.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Simon Riggs <simon@2ndQuadrant.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Magnus Hagander <magnus@hagander.net>
Re: Parallel query execution Robert Haas <robertmhaas@gmail.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: CF3+CF4 WAS: Parallel query execution Josh Berkus <josh@agliodbs.com>
Re: CF3+CF4 WAS: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: CF3+CF4 WAS: Parallel query execution Josh Berkus <josh@agliodbs.com>
Re: Parallel query execution Jeff Janes <jeff.janes@gmail.com>
Re: Parallel query execution Michael Paquier <michael.paquier@gmail.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
Re: Parallel query execution Peter Geoghegan <peter@2ndquadrant.com>
Re: Parallel query execution Bruce Momjian <bruce@momjian.us>
* Gavin Flower (GavinFlower@archidevsys.co.nz) wrote: > How about being aware of multiple spindles - so if the requested > data covers multiple spindles, then data could be extracted in > parallel. This may, or may not, involve multiple I/O channels? Yes, this should dovetail with partitioning and tablespaces to pick up on exactly that. We're implementing our own poor-man's parallelism using exactly this to use as much of the CPU and I/O bandwidth as we can. I have every confidence that it could be done better and be simpler for us if it was handled in the backend. > On large multiple processor machines, there are different blocks of > memory that might be accessed at different speeds depending on the > processor. Possibly a mechanism could be used to split a transaction > over multiple processors to ensure the fastest memory is used? Let's work on getting it working on the h/w that PG is most commonly deployed on first.. I agree that we don't want to paint ourselves into a corner with this, but I don't think massive NUMA systems are what we should focus on first (are you familiar with any that run PG today..?). I don't expect we're going to be trying to fight with the Linux (or whatever) kernel over what threads run on what processors with access to what memory on small-NUMA systems (x86-based). > Once a selection of rows has been made, then if there is a lot of > reformatting going on, then could this be done in parallel? I can > of think of 2 very simplistic strategies: (A) use a different > processor core for each column, or (B) farm out sets of rows to > different cores. I am sure in reality, there are more subtleties > and aspects of both the strategies will be used in a hybrid fashion > along with other approaches. Given our row-based storage architecture, I can't imagine we'd do anything other than take a row-based approach to this.. I would think we'd do two things: parallelize based on partitioning, and parallelize seqscan's across the individual heap files which are split on a per-1G boundary already. Perhaps we can generalize that and scale it based on the number of available processors and the size of the relation but I could see advantages in matching up with what the kernel thinks are independent files. > I expect that before any parallel algorithm is invoked, then some > sort of threshold needs to be exceeded to make it worth while. Certainly. That's need to be included in the optimization model to support this. Thanks, Stephen
В списке pgsql-hackers по дате отправления