Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-22 Thread Mark Cotner
Thanks again everyone for the excellent suggestions. I looked into IO::Reactor, but after a few hours of fiddling decided I was getting the kind of performance I wanted from using a slightly more than modest number of threads and decided(due to dev timelines) to come back to patching the SNMP libr

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Mark Cotner
:) Most of the ppl on this list are systems programmers, however I am not. The tool of choice for this app is Ruby and the libraries don't support async SNMP at the moment. I've done a good deal of async snmp and the libraries that actually pull it off generally aren't that good(Net-SNMP and Perl

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Ron
At 03:31 PM 8/19/2005, Alex Turner wrote: Don't forget that Ultra 320 is the speed of the bus, not each drive. No matter how many honking 15k disks you put on a 320MB bus, you can only get 320MB/sec! and have so many outstanding IO/s on the bus. Of course. This is exactly why multi-channel SCS

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Alex Turner
Don't forget that Ultra 320 is the speed of the bus, not each drive. No matter how many honking 15k disks you put on a 320MB bus, you can only get 320MB/sec! and have so many outstanding IO/s on the bus. Not so with SATA! Each drive is on it's own bus, and you are only limited by the speed of you

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread PFC
While I agree that hundreds of threads seems like overkill, I think the above advice might be going too far in the other direction. The problem with single-threaded operation is that any delay affects the whole system --- eg, if you're blocked waiting for disk I/O, the CPU doesn't You

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Ron
At 12:34 PM 8/19/2005, Jeffrey W. Baker wrote: On Fri, 2005-08-19 at 10:54 -0400, Ron wrote: > Maxtor Atlas 15K II's. > Areca's 1GB buffer RAID cards The former are SCSI disks and the latter is an SATA controller. The combination would have a transaction rate of approximately 0. You are evid

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread J. Andrew Rogers
On 8/19/05 1:24 AM, "Mark Cotner" <[EMAIL PROTECTED]> wrote: > I'm currently working on an application that will poll > thousands of cable modems per minute and I would like > to use PostgreSQL to maintain state between polls of > each device. This requires a very heavy amount of > updates in plac

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Jeffrey W. Baker
On Fri, 2005-08-19 at 10:54 -0400, Ron wrote: > Maxtor Atlas 15K II's. > Areca's 1GB buffer RAID cards The former are SCSI disks and the latter is an SATA controller. The combination would have a transaction rate of approximately 0. I can vouch for the Areca controllers, however. You can cert

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Ron
At 09:58 AM 8/19/2005, Andreas Pflug wrote: The 1-2k xact/sec for MySQL seems suspicious, sounds very much like write-back cached, not write-through, esp. considering that heavy concurrent write access isn't said to be MySQLs strength... Don't be suspicious. I haven't seen the code under dis

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Ron
Alex mentions a nice setup, but I'm pretty sure I know how to beat that IO subsystems HW's performance by at least 1.5x or 2x. Possibly more. (No, I do NOT work for any vendor I'm about to discuss.) Start by replacing the WD Raptors with Maxtor Atlas 15K II's. At 5.5ms average access, 97.4MB/

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Tom Lane
Andreas Pflug <[EMAIL PROTECTED]> writes: > Tom Lane wrote: >> As far as the question "can PG do 1-2k xact/sec", the answer is "yes >> if you throw enough hardware at it". Spending enough money on the >> disk subsystem is the key ... >> > The 1-2k xact/sec for MySQL seems suspicious, sounds very

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Andreas Pflug
Tom Lane wrote: Bob Ippolito <[EMAIL PROTECTED]> writes: If you don't want to optimize the whole application, I'd at least just push the DB operations down to a very small number of connections (*one* might even be optimal!), waiting on some kind of thread-safe queue for updates from th

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Tom Lane
Bob Ippolito <[EMAIL PROTECTED]> writes: > If you don't want to optimize the whole application, I'd at least > just push the DB operations down to a very small number of > connections (*one* might even be optimal!), waiting on some kind of > thread-safe queue for updates from the rest of the

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Alex Turner
I have managed tx speeds that high from postgresql going even as high as 2500/sec for small tables, but it does require a good RAID controler card (yes I'm even running with fsync on). I'm using 3ware 9500S-8MI with Raptor drives in multiple RAID 10s. The box wasn't too $$$ at just around $7k. I

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Bob Ippolito
On Aug 19, 2005, at 12:14 AM, Mark Cotner wrote: Excellent feedback. Thank you. Please do keep in mind I'm storing the results of SNMP queries. The majority of the time each thread is in a wait state, listening on a UDP port for return packet. The number of threads is high because in o

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Mark Cotner
Excellent feedback. Thank you. Please do keep in mind I'm storing the results of SNMP queries. The majority of the time each thread is in a wait state, listening on a UDP port for return packet. The number of threads is high because in order to sustain poll speed I need to minimize the impact o

Re: [PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Bob Ippolito
On Aug 18, 2005, at 10:24 PM, Mark Cotner wrote: I'm currently working on an application that will poll thousands of cable modems per minute and I would like to use PostgreSQL to maintain state between polls of each device. This requires a very heavy amount of updates in place on a reasonably

[PERFORM] sustained update load of 1-2k/sec

2005-08-19 Thread Mark Cotner
Hi all, I bet you get tired of the same ole questions over and over. I'm currently working on an application that will poll thousands of cable modems per minute and I would like to use PostgreSQL to maintain state between polls of each device. This requires a very heavy amount of updates in pla