Jim C. Nasby wrote:
On Wed, Apr 26, 2006 at 07:30:49PM -0600, Benjamin Krajmalnik wrote:
I am about to take a system from testing into production.
The system is a combination oltp/bi (network monitoring platform).
We are currently inserting about 1 million rows per day, and will
increase to probably 5 million once it goes into full deployment.
The current test production server is running Windows Server 2003,
PostgreSQL 8.1.3.
Record insertion is done via an ODBC call to a stored procedure from a
Windows based host monitor.
Make sure you're batching inserts with transactions.
It is currently running on a 3GHz Xeon HT, 2GB RAM, dual 72GB disks
running RAID 1. This server is a 1U without only 2 drive bays, so I
have a potential issue with drive space.
As a result, I will be moving the db server to a Dell 1650 with 3 146GB
SCSI drives running RAID 0. System is a dual processor, 1.2GHz, with
4GB RAM.
3 drive raid0 is likely to fail within 3-4 years, just so you know;
unless it's not new hardware, in which case I'd expect something closer
to 2 years (my general experience is that server HDs will last 4-6
years, so with 3 of them you're looking at a failure every ~2 years).
You sure you want to trust a monitoring app to raid0? :)
Due to the amount of record insertions being performed, record insertion
speed is paramount - also because excessive execution time will have a
side effect of causing the monitoring agent to go stale. Some of the
users have mentioned that I will get better performance running under a
*nix OS. We are mostly a Microsoft OS house, but also run FreeBSD. I
am considering deploying with FreeBSD 6.0. I was wondering if anyone
has benchmarks showing speed of execution of PostgreSQL 8.1.3 under
Win2003 and FreeBSD 6.0. Also, are there any caveats or items I should
be aware of if running under FreeBSD? Any issues when running under a
multi-processor kernel? Anything in specific which I should include in
the kernel build to give me optimum performance for running PostgreSQL?
Needless to say, I am a bit nervous of moving to FreeBSD since I have
not tested it in a production environment.
Aside from some very large shops running FreeBSD (yahoo does I believe,
and hotmail did for a long time, even after MS bought it), it's also a
preferred OS by PostgreSQL developers. On the other hand we've only had
Windows support for about 2 years and there's known windows-only issues.
Not certain about freebsd 6.x, but on 4.x, running an intel SMP build
limits each machine to three and a half gigs of memory:
FreeBSD 5.4-STABLE #0: Fri Sep 2 11:32:58 PDT 2005
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Xeon(TM) CPU 3.06GHz (3056.50-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0xf27 Stepping = 7
Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
Hyperthreading: 2 logical CPUs
real memory = 3759144960 (3585 MB)
avail memory = 3679334400 (3508 MB)
There is 4 gigs of physical memory in the machine that produced the
above. PAE cannot be built into this kernel... I can't even remember
what the error was..
I think PAE ended up being incompatible with HTT.
-Brian