PostgreSQL on Big Sites?
An anonymous reader asks: "I've been using PostgreSQL for years on small projects, and I have an opportunity to migrate my company's websites from Oracle to an open-source alternative. It would be good to be able to show the PHBs that PostgreSQL is a viable candidate, but I'm unable to find a list of high-traffic sites that use it. Does anyone know of any popular sites that run PostgreSQL?"
See, for instance, PostgreSQL Case Studies and from the pgsql-advocacy mailing list comes some more: Finally, a list of *big* companies using PostgreSQL for *serious* projects. Why use PostgreSQL? Here's why for some examples.
How am I supposed to fit a pithy, relevant quote into 120 characters?
Story
MadPenguin has an interview with Josh Berkus, one of the core team members of PostgreSQL.
I've never used PostgreSQL so I can't and won't say anything about it other than this: Make sure Postgres does everything you need and can perform similarly to Oracle in your environment.
We momentarily thought about dropping Oracle for PGSQL at my last company, but after we hired a consultant to do everything he could with Postgres to improve performance, Oracle was still a clear winner for us.
I don't know if he was incompetent or what, but the performance numbers weren't even close with what we needed it to do.
If your database will run just as well on PostgreSQL, I say go for it. If you go with PostgreSQL and it doesn't perform as well as Oracle in your environment, your management will have serious doubts about open-source software from then on, and that's a stain that is hard to get rid of.
in short: choose based on your needs, not based on the fact that one is open and the other isn't.
SPI, the authoritative .org registrar, and Afilias, the authoritative .info registrar both use PostgreSQL for their registration databases.
I am no longer wasting my time with slashdot
> Is your companies website essentially read-only page loading? If so, why not just go with MySQL.
MyISAM can't handle a database of larger than 2 gigs. Once you switch to another table backend, MySQL's vaunted performance advantage pretty much evaporates.
> Peak volume, company is making $1M/hour in sales on the web, db dies and won't come up....who you gonna call?
My DBA, assuming I'm running point-in-time recovery. That's all Oracle is going to tell you to do. The unemployment office if I'm not. Although PITR in pgsql is something of a PITA, which just might go to recommend Oracle for the time being.
I am no longer wasting my time with slashdot
Their website shows that BASF uses PostgreSQL as their DB.
www.basf.com
They're an enormous company. I've always heard too that PostgreSQL is much better for larger sites. Cannot say for sure though as I have never used it.
Alcohol & calculus don't mix. Never drink & derive.
> What if its the point-in-time recovery that is broken/buggy? As a DBA, who do you want to deal with?
If I'm doing a million bucks an hour, I damn well had better be running a replica, so let's add that to the solution menu too. pgsql's replication ain't terrific either. Works, but not too flexible. Score another for Oracle.
Anyway, if Oracle's PITR is broken/buggy, you are screwed screwed screwed. First, let's forget the fanciful notion that you can sue them. Now you're part of the support machine, the wheels of which grind exceedingly slowly and roughly.
I don't often like to plug source access because it's extremely overrated, but as a last resort, if you can instrument your database startup with a debugger and trace the point of failure, you now have an advantage FAR greater than that Oracle is going to give you once while your trouble ticket clears through the dozen support techs who repeat the same useless advice and tie up your time.
I also don't like to sling the term "FUD" around, because it's so often this shibboleth of the open source crowd, anything they disagree with, but what Oracle employs against solutions like PostgreSQL is often pure FUD. "Who you gonna call? Who's behind your data? What will you do WHEN it breaks? Scary scary scary, you just don't knooooowwww!!" I could probably turn around to an Oracle rep and say "right, that's about the same sort of feeling I get when dealing with YOUR support organization as well."
If I'm doing a million bucks an hour, I'm probably picking Oracle too, because it's had more years to shake out PITR, hot backup, and clustering than pgsql has, so there's more of a body of knowledge accumulated on it. I just don't like the climate of fear going around when there's plenty of Oracle disasters to look at and learn from as well.
I am no longer wasting my time with slashdot
This question really requires more data. How much traffic are we talking about? How much data are we talking about? And then there are all sorts of variables, like the type of content begin stored in the database, the number and types of queries that are done on each page, and the type of caching your application is doing.
Also, if Oracle is already purchased and paid for, you will have a difficult time making a business case for PostgreSQL.
Don't get me wrong, I like PostgreSQL. But you will want to have a reason for switching, aside from PostgreSQL being open source.
Just because your company can spend hundreds of thousands of dollars (or millions for a large installation) on something that's really orthogonal to the actual business that your company is in, doesn't mean you should.
If I was a PHB type for an online retailer and I looked at the costs and noticed that 50% of our profits are going to Oracle rather than to our pockets, I'd have some questions for the IT guys like:
(1) Are we a retailer or a data warehousing company?
(2) What is Oracle and why is it so expensive?
(3) Can you get the same job done with less money? If so, what costs, benefits, and risks might we see?
(4) My friend's IT guys use this thing called Post-whatever-SQL, and it costs $0. Is Oracle kinda like that?
Social scientists are inspired by theories; scientists are humbled by facts.
FUD. MyISAM certainly can handle a database of larger than 2 gigs. It can even handle _tables_ larger than 2 gigs. "As you can see, MySQL remembers the create options exactly as specified. And it chose a representation capable of holding 91 GB of data." (p.38, High Performance MySQL: Optimization [sic], Backups, Replication & Load Balancing, by Jeremy D. Zawodny & Derek J. Balling, published by O'Reillly, April 2004.
Oceania has always been at war with Eastasia.