Thread: Shopping for hardware

Shopping for hardware

From
Jason Hihn
Date:
Ok, I asked this on [novice], but I was told it's be better to post it
here...

I've got some money to spend on a new servers. The biggest concern is the
PostgreSQL database server that will "be the company." (*Everyone* uses the
database server in some form or another) I'm looking for hot-swappable RAID
1 on a Linux platform at the least. Are there any vendors to avoid or
prefer? What works best? Am I better off going with a DIY or getting
something pre-packaged?

In terms of numbers, we expect have an average of 100 active connections
(most of which are idle 9/10ths of the time), with about 85% reading
traffic.  I hope to have one server host about 1000-2000 active databases,
with the largest being about 60 meg (no blobs). Inactive databases will only
be for reading (archival) purposes, and will seldom be accessed. (I could
probably move them off to another server with a r/o disk...)

Does any of this represent a problem for Postgres? The datasets are
typically not that large, only a few queries on a few databases ever return
over 1000 rows.

The configuration that is going on in my head is:
RAID 1, 200gig disks
1 server, 4g ram
Linux 2.4 or 2.6 (depends on when we deploy and 2.6's track record at that
time)

I want something that can do hot-swaps and auto-mirroring after swap.
Unfortunately, this is a new area for me. (I normally stick to S/W for
non-high end systems)

Thanks!


Jason Hihn
Paytime Payroll



Re: Shopping for hardware

From
"scott.marlowe"
Date:
On Mon, 6 Oct 2003, Jason Hihn wrote:

> Ok, I asked this on [novice], but I was told it's be better to post it
> here...
>
> I've got some money to spend on a new servers. The biggest concern is the
> PostgreSQL database server that will "be the company." (*Everyone* uses the
> database server in some form or another) I'm looking for hot-swappable RAID
> 1 on a Linux platform at the least. Are there any vendors to avoid or
> prefer? What works best? Am I better off going with a DIY or getting
> something pre-packaged?

Depends on your hardware expertise.  You can do quite well either way.  I
prefer adding my own components to a pre-built vanilla server.

> In terms of numbers, we expect have an average of 100 active connections
> (most of which are idle 9/10ths of the time), with about 85% reading
> traffic.  I hope to have one server host about 1000-2000 active databases,
> with the largest being about 60 meg (no blobs). Inactive databases will only
> be for reading (archival) purposes, and will seldom be accessed. (I could
> probably move them off to another server with a r/o disk...)

That's not a really big load, but I'm guessing the peaks will be big
enough to notice.

> Does any of this represent a problem for Postgres? The datasets are
> typically not that large, only a few queries on a few databases ever return
> over 1000 rows.

Nah, this is pretty normal stuff for Postgresql or any other database in
its approximate class (Sybase, Oracle, Informix, DB2, MSSQL2k).

> The configuration that is going on in my head is:
> RAID 1, 200gig disks
> 1 server, 4g ram
> Linux 2.4 or 2.6 (depends on when we deploy and 2.6's track record at that
> time)

That's a good starting point.  I'd avoid 2.6 until it's had time for the
bugs to drop out.  The latest 2.4 kernels are pretty stable.

List of things to include if you need more performance, in order of
priority:

proper tuning of the postgresql.conf file (see
http://www.varlena.com/varlena/GeneralBits/Tidbits/perf.html)
hardware RAID card with battery backed cache, the bigger the cache the
better.
more drives for RAID 1+0
faster CPUs.

since you've already got 4 gigs of RAM slated, you're set there on linux,
where having more won't likely help a lot unless you go to a 64 bit
platform.

> I want something that can do hot-swaps and auto-mirroring after swap.
> Unfortunately, this is a new area for me. (I normally stick to S/W for
> non-high end systems)

The LSI/Megaraid cards can handle hot swaps quite well, make sure you get
the right kind of hot swap shoes so they isolate the drive from the buss
when you turn it off and they don't lock up your scsi buss.


Re: Shopping for hardware

From
Vivek Khera
Date:
>>>>> "JH" == Jason Hihn <jhihn@paytimepayroll.com> writes:

JH> The configuration that is going on in my head is:
JH> RAID 1, 200gig disks
JH> 1 server, 4g ram
JH> Linux 2.4 or 2.6 (depends on when we deploy and 2.6's track record at that
JH> time)

My recommendation is to get more disks (smaller and faster) rather
than a few large ones.  As for vendors, I always buy from Dell because
they actually honor their "4-hour 24x7 replacement parts with
technician to stick 'em" in guarantee.  That and their hardware is
rock solid and non-funky (ie, I can run FreeBSD on it with no issues).

Here's my latest setup I just got:

Dell PE 2650, dual Xeon processors (lowest speed they sell, as this is
not a bottleneck)
4Gb RAM
Dell PERC3 RAID controller (rebranded AMI controller) dual channel
2x 18Gb internal disks on RAID1 (RAID channel0)
14x 18Gb external disks on RAID5 (RAID channel1, see my posts on this
list from a month or so ago on how I arrived at RAID5).

All the disks are SCSI 15kRPM U320 drives, tho the controller only
does U160.

I run FreeBSD, but it should run linux just fine, too.

--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Vivek Khera, Ph.D.                Khera Communications, Inc.
Internet: khera@kciLink.com       Rockville, MD       +1-240-453-8497
AIM: vivekkhera Y!: vivek_khera   http://www.khera.org/~vivek/

Re: Shopping for hardware

From
Josh Berkus
Date:
Jason,

> In terms of numbers, we expect have an average of 100 active connections
> (most of which are idle 9/10ths of the time), with about 85% reading
> traffic.  I hope to have one server host about 1000-2000 active databases,
> with the largest being about 60 meg (no blobs). Inactive databases will
> only be for reading (archival) purposes, and will seldom be accessed. (I
> could probably move them off to another server with a r/o disk...)

Hey, two people (one of them me) suggested that rather than putting all 2000
databases on one $15,000 server, that you buy 3 $5000 servers and split
things up.   You may have considered this suggestion and rejected it, but
I'mm wondering if you missed it ...

If you're lumping everything on one server, you'll need to remember to
increase max_fsm_relations to the total number of tables in all databases ...
for example, for 10 tables in 2000 databases you'll want a setting of 20000
(which sounds huge but it's really only about 1mb memory).

--
Josh Berkus
Aglio Database Solutions
San Francisco