Re: Best suiting OS - Mailing list pgsql-performance

From Scott Marlowe
Subject Re: Best suiting OS
Date
Msg-id dcc563d10910041742g68942d37lc314f88090ec27d8@mail.gmail.com
Whole thread Raw
In response to Re: Best suiting OS  (Mark Mielke <mark@mark.mielke.cc>)
Responses Maybe OT, not sure Re: Best suiting OS  (Mark Mielke <mark@mark.mielke.cc>)
Re: Best suiting OS  (Craig James <craig_james@emolecules.com>)
List pgsql-performance
On Sun, Oct 4, 2009 at 8:05 AM, Mark Mielke <mark@mark.mielke.cc> wrote:
> On 10/01/2009 03:44 PM, Denis Lussier wrote:
>>
>> I'm a BSD license fan, but, I don't know much about *BSD otherwise (except
>> that many advocates say it runs PG very nicely).
>>
>> On the Linux side, unless your a dweeb, go with a newer, popular & well
>> supported release for Production.  IMHO, that's RHEL 5.x or CentOS 5.x.  Of
>> course the latest SLES & UBuntu schtuff are also fine.
>>
>> In other words, unless you've got a really good reason for it, stay away
>> from Fedora & OpenSuse for production usage.
>
> Lots of conflicting opinions and results in this thread. Also, a lot of hand
> waving and speculation. :-)
>
> RHEL and CentOS are particular bad *right now*. See here:
>    http://en.wikipedia.org/wiki/RHEL
>    http://en.wikipedia.org/wiki/CentOS
>
> For RHEL, look down to "Release History" and RHEL 5.3 based on Linux-2.6.18,
> released March, 2007. On the CentOS page you'll see it is dated April, 2007.
> CentOS is identical to RHEL on purpose, but always 1 to 6 months after the
> RHEL, since they take the RHEL source, re-build it, and then re-test it.
>
> Linux is up to Linux-2.6.31.1 right now:
>    http://www.kernel.org/
>
> So any comparisons between operating system *distributions* should be fair.
> Comparing a 2007 release to a 2009 release, for example, is not fair. RHEL /
> CentOS are basically out of the running right now, because they are so old.
> However, RHEL 6.0 should be out in January or February, 2010, at which point
> it will be relevant again.

It's completely fair.  I have a Centos 5.2 machine with 430 or so days
of uptime.  I put it online, tested it and had it ready 430 days ago
and it's crashed / hung exactly zero times since.  You're right.  It's
completely unfair to compare some brand new kernel with unknown
bugginess and stability issues to my 5.2 machine.  Oh wait, you're
saying Centos is out of the running because it's old?  That's 110%
backwards from the way a DBA should be thinking.  First make it
stable, THEN look for ways to make it performance.  A DB server with
stability issues is completely useless in a production environment.

> Personally, I use Fedora, and my servers have been quite stable. One of our
> main web servers running Fedora:

It's not that there can't be stable releases of FC, it's that it's not
the focus of that project.  So, if you get lucky, great!  I can't
imagine running a production DB on FC, with it's short supported life
span and focus on development and not stability.

> [mark@bambi]~% uptime
>  09:45:41 up 236 days, 10:07,  1 user,  load average: 0.02, 0.04, 0.08
>
> It was last rebooted as a scheduled reboot, not a crash. This isn't to say
> Fedora will be stable for you - however, having used both RHEL and Fedora,
> in many different configurations, I find RHEL being 2+ years behind in terms
> of being patch-current means that it is NOT as stable on modern hardware.

It is NOT 2+ years behind on patches.  Any security issues or bugs
that show up get patched.  Performance enhancing architectural changes
get to wait for the next version (RHEL6).

> Most recently, I installed RHEL on a 10 machine cluster of HP nodes, and
> RHEL would not detect the SATA controller out of the box and reverted to
> some base PIO mode yielding 2 Mbyte/s disk speed.

Yes, again,  RHEL is focused on making stable, already production
capable hardware stay up, and stay supported for 5 to 7 years.  It's a
different focus.

> Fedora was able to achieve
> 112 Mbyte/s on the same disks. Some twiddling of grub.conf allowed RHEL to
> achieve the same speed, but the point is that there are two ways to
> de-stabilize a kernel. One is to use the leading edge, the other is to use
> the trailing edge.

Sorry, but your argument does not support this point.  RHEL took
twiddling to work with the SATA ports.

> Using an operating system designed for 2007 on hardware
> designed in 2009 is a bad idea.

Depends on whether or not it's using the latest and greatest or if
RHEL has back patched support for newer hardware.  Using RHEL on
hardware that isn't officially supported is a bad idea.  I agree about
halfway here, but not really.  I have brand new machines running
Centos 5.2 with no problem.

>Using an operating system designed for 2009
> on 2007 hardware might also be a bad idea.

I think you have to go further back.  Unlike Vista, Linux kernels tend
to support older hardware for a very long time.

> Using a modern operating system
> on modern hardware that the operating system was designed for will give you
> the best performance potential.

True.  But you have to test it hard and prove it's reliable first,
cause it really doesn't matter how fast it crashes.

> In this case, Fedora 11 with Linux 2.6.30.8
> is almost guaranteed to out-perform RHEL 5.3 with Linux 2.6.18. Where Fedora
> is within 1 to 6 months of the leading edge, Ubuntu is within 3 to 9 months
> of the leading edge, so Ubuntu will perform more similar to Fedora than
> RHEL.

And on more exotic hardware (think 8 sockets of 6 core CPUs 128G RAM
and $1400 RAID controllers) it's usually much less well tested yet,
and more likely to bite you in the but.  Nothing like waking up to a
production issue where 46 of your 48 cores are stuck spinning at 100%
with some wonderful new kernel bug that's gonna take 6 months to get a
fix to.  I'll stick to 15% slower but never crashing.  I'll test the
new OS for sure, but I won't trust it enough to put it into production
until it's had a month or more of testing to prove it works.  And with
FC, that's a large chunk of its support lifespan.

> I've given up on the OS war. People use what they are comfortable with.

No, I'm not a huge fan of RHEL.  I'd prefer to run debian or ubuntu on
my servers, but both had some strange bug with multicore systems last
year, and I was forced to run Centos to get a stable machine.  I'll
take a look at Solaris / Open Solaris when I get a chance.  And
FreeBSD now too.  What I'm comfortable with will only matter if it's
stable and reliable and supportable.

> Comfort lasts until the operating systems screws a person over, at which
> point they "hate" it, and switch to something else. It's about passion - not
> about actual metrics, capability, reliability, or any of these other
> supposed criteria.

Sorry, but you obviously don't know me, and I'm guessing a lot of
people on this list, well enough to make that judgement.  Maybe for
some folks comfort is what matters.  For professionals it's not that
at all.  It's about stability, reliability, and performance.  Comfort
is something we just hope we can get in the deal too.

pgsql-performance by date:

Previous
From: Scott Marlowe
Date:
Subject: Re: Speed / Server
Next
From: Omar Kilani
Date:
Subject: Re: Bad performance of SELECT ... where id IN (...)