Thread: postgres on a beowulf? (AMD)opteron?
Has anyone run postgres on a beowulf system? I'm shopping for a new server. One candidate would be a quad opteron (64-bit AMD "hammer") machine. Another approach might be a beowulf of single or dual opterons. I imagine the beowulf would be a bit cheaper, and much more expandable, but what about the shared memory used by the postgres backends? I gather that postgres uses shared memory to coordinate (locks?) between backends? I have a smallish DB (pgdump|bzip2 -> 10MB), with ~45 users logged in using local X(python/gtk) postgres client apps. Will the much slower shared memory access between beowulf nodes be a performance bottleneck? [Next question is: has anyone used postgres on an opteron at all??] -- George -- I cannot think why the whole bed of the ocean is not one solid mass of oysters, so prolific they seem. Ah, I am wandering! Strange how the brain controls the brain! -- Sherlock Holmes in "The Dying Detective"
george young kirjutas E, 19.05.2003 kell 20:28: > Has anyone run postgres on a beowulf system? I don't think that postgresql will easyly port to beowulf clusters. > I'm shopping for a new server. One candidate would be a > quad opteron (64-bit AMD "hammer") machine. Another approach might > be a beowulf of single or dual opterons. I imagine the beowulf > would be a bit cheaper, and much more expandable, but what about > the shared memory used by the postgres backends? I gather that > postgres uses shared memory to coordinate (locks?) between backends? > > I have a smallish DB (pgdump|bzip2 -> 10MB), with ~45 users logged in > using local X(python/gtk) postgres client apps. Why do you want such a monster machine for this smallish DB ? Are there any special performance requirements you are not telling us about ? > Will the much slower shared memory access between beowulf nodes be > a performance bottleneck? I guess that it will not run at all ;( -------------- Hannu
On Mon, May 19, 2003 at 01:28:32PM -0400, george young wrote: > Has anyone run postgres on a beowulf system? Can't be done. None of the cluster systems support cross-machne shared memory (this is actually a problem for Postgres and NUMA, as well, BTW). > I have a smallish DB (pgdump|bzip2 -> 10MB), with ~45 users logged in > using local X(python/gtk) postgres client apps. Seems like you want a sledgehammer to kill a fly here. That's tiny. Why do you want the complications of a cluster for this? A -- ---- Andrew Sullivan 204-4141 Yonge Street Liberty RMS Toronto, Ontario Canada <andrew@libertyrms.info> M2P 2A8 +1 416 646 3304 x110
On Mon, 19 May 2003, george young wrote: > Has anyone run postgres on a beowulf system? > > I'm shopping for a new server. One candidate would be a > quad opteron (64-bit AMD "hammer") machine. Another approach might > be a beowulf of single or dual opterons. I imagine the beowulf > would be a bit cheaper, and much more expandable, but what about > the shared memory used by the postgres backends? I gather that > postgres uses shared memory to coordinate (locks?) between backends? > > I have a smallish DB (pgdump|bzip2 -> 10MB), with ~45 users logged in > using local X(python/gtk) postgres client apps. > > Will the much slower shared memory access between beowulf nodes be > a performance bottleneck? Save yourself some money on the big boxes and get a fast drive subsystem and lots of memory, those are more important than raw horsepower, and any dual Opteron / Itanium2 / USparc III / PPC / Xeon machine has plenty of CPU ponies to handle the load. We use dual PIII's for most of our serving, and while our front end web servers need to grow a bit to handle all the PHP we're throwing at them, the postgresql database on the dual PIII-750 is still plenty fast. I.e. our bottlenecks are elsewhere than pgsql. I don't know anyone off the top of my head that's running postgresql on an Opteron, by the way, but I expect it should work fine. You're more likely to have problems finding a distribution that works well on top of an Opteron than to have problems with pgsql.
On Tue, 2003-05-20 at 06:27, Andrew Sullivan wrote: > On Mon, May 19, 2003 at 01:28:32PM -0400, george young wrote: > > Has anyone run postgres on a beowulf system? > > Can't be done. None of the cluster systems support cross-machne > shared memory (this is actually a problem for Postgres and NUMA, as > well, BTW). VMSclusters and Tru64 clusters do, but, of course, it has to be programmed for. And the licensing costs are pretty steep... -- +-----------------------------------------------------------+ | Ron Johnson, Jr. Home: ron.l.johnson@cox.net | | Jefferson, LA USA http://members.cox.net/ron.l.johnson | | | | Regarding war zones: "There's nothing sacrosanct about a | | hotel with a bunch of journalists in it." | | Marine Lt. Gen. Bernard E. Trainor (Retired) | +-----------------------------------------------------------+
On 21 May 2003, Ron Johnson wrote: > On Tue, 2003-05-20 at 06:27, Andrew Sullivan wrote: > > On Mon, May 19, 2003 at 01:28:32PM -0400, george young wrote: > > > Has anyone run postgres on a beowulf system? > > > > Can't be done. None of the cluster systems support cross-machne > > shared memory (this is actually a problem for Postgres and NUMA, as > > well, BTW). > > VMSclusters and Tru64 clusters do, but, of course, it has to be > programmed for. > > And the licensing costs are pretty steep... someone was on the list last year and had gotten postgresql (sorta) working on mosix clusters. The performance, I recall, was less than stellar.
scott.marlowe wrote: > On 21 May 2003, Ron Johnson wrote: > > > On Tue, 2003-05-20 at 06:27, Andrew Sullivan wrote: > > > On Mon, May 19, 2003 at 01:28:32PM -0400, george young wrote: > > > > Has anyone run postgres on a beowulf system? > > > > > > Can't be done. None of the cluster systems support cross-machne > > > shared memory (this is actually a problem for Postgres and NUMA, as > > > well, BTW). > > > > VMSclusters and Tru64 clusters do, but, of course, it has to be > > programmed for. > > > > And the licensing costs are pretty steep... > > someone was on the list last year and had gotten postgresql (sorta) > working on mosix clusters. The performance, I recall, was less than > stellar. I think they copied and locked the shared memory for each machine that needed it. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
On Monday 19 May 2003 22:58, george young wrote: > Has anyone run postgres on a beowulf system? > > I'm shopping for a new server. One candidate would be a > quad opteron (64-bit AMD "hammer") machine. Another approach might > be a beowulf of single or dual opterons. I imagine the beowulf > would be a bit cheaper, and much more expandable, but what about > the shared memory used by the postgres backends? I gather that > postgres uses shared memory to coordinate (locks?) between backends? Postgresql will not run on beowulf at all since it is an MPI system and postgresql can no span a single database across machines (yet). Further it won't even run on mosix because mosix does not support shared memory across machines. > > I have a smallish DB (pgdump|bzip2 -> 10MB), with ~45 users logged in > using local X(python/gtk) postgres client apps. Well, you haven't put how many transactions you do, but in general for that sort of DB, a P-IV/512MB RAM and SCSI disk would be more than enough unless you are doing really exotic things with data.. > [Next question is: has anyone used postgres on an opteron at all??] Well, if it runs linux as good as anything else, postgresql will run as good as anything else..:-) HTH Shridhar
On Tue, 20 May 2003, Shridhar Daithankar wrote: > On Monday 19 May 2003 22:58, george young wrote: > > Has anyone run postgres on a beowulf system? > > > > I'm shopping for a new server. One candidate would be a > > quad opteron (64-bit AMD "hammer") machine. Another approach might > > be a beowulf of single or dual opterons. I imagine the beowulf > > would be a bit cheaper, and much more expandable, but what about > > the shared memory used by the postgres backends? I gather that > > postgres uses shared memory to coordinate (locks?) between backends? > > Postgresql will not run on beowulf at all since it is an MPI system and > postgresql can no span a single database across machines (yet). Further it > won't even run on mosix because mosix does not support shared memory across > machines. > > > > > I have a smallish DB (pgdump|bzip2 -> 10MB), with ~45 users logged in > > using local X(python/gtk) postgres client apps. > > Well, you haven't put how many transactions you do, but in general for that > sort of DB, a P-IV/512MB RAM and SCSI disk would be more than enough unless > you are doing really exotic things with data.. > > > [Next question is: has anyone used postgres on an opteron at all??] > > Well, if it runs linux as good as anything else, postgresql will run as good > as anything else..:-) Keep in mind, if what you're doing is very memory intensive, then the PIV with it's faster memory bandwidth may be the best bet. If it's CPU processing intensive (GIS calculations) or I/O intensive the AMD's should be competitive, but for memory I/O speed bound apps, the P IV is still faster. You'll not know which is faster until you've benchmarked it yourself under your own load though. :-)