On Tue, 27 Nov 2007, Wolfgang Keller wrote:
Anyway, how does MacOS X (both 10.4 and 10.5) compare to Windows (2000, XP, Vista etc.) on the same hardware? And Linux to (Free-/Net-/whatever) BSD?
Apple hardware gets so expensive for some types of database configurations that such a comparision doesn't even make a lot of sense. For example, if you have an application that needs high database write throughput, to make that work well with PostgreSQL you must have a controller with a battery backed cache. If I have a PC, the entry-level solution in that category can be a random sub-$1000 system that runs Linux plus around $400 for a RAID card with BBC, and you've got multiple vendors to consider there (3Ware, Areca, LSI Logic, etc.)
To do something similar with Apple hardware, you can get a Mac Pro and add their RAID card, at $3500 (early reports suggest even that may have serious problems, see http://forums.macrumors.com/showthread.php?t=384459 ). Or you can pick up an XServe RAID, but now you're talking $6350 because the smallest configuration is 1TB. The amount of server you can buy for $3500+ running Linux is going to be much more powerful than its Apple equivilant. Sure, you can run a trivial workload that features minimal writes even on a Mac Mini, but I don't see a lot of value to considering a platform where the jump to the cheapest serious server configuration is so big.
Also, in previous generations, the Mach kernel core of Mac OS had some serious performance issues for database use even in read-heavy workloads: http://www.anandtech.com/mac/showdoc.aspx?i=2520&p=5 There are claims this is improved in current systems (Leopard + Intel), but the margin was so big before I would need some pretty hard proof to believe they've even achieved parity with Linux/FreeBSD on the same hardware, and even then the performance/dollar is unlikely to be competative.
I'm just wondering whether the performance gain is worth the learning effort required for Linux or BSD compared to the Mac.
On both Windows (where you get limitations like not being able to set a large value for shared_buffers) and Mac OS X, PostgreSQL has enough performance issues that I feel using those plaforms can only be justified if platform compatibility is more important than performance to you. The minute performance becomes a serious concern, you'd be much better off with Linux, one of the BSDs that's not hobbled by using the Mach kernel, or one of the more serious UNIXes like Solaris.
-- * Greg Smith gsmith@xxxxxxxxxxxxx http://www.gregsmith.com Baltimore, MD ---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster