A couple days ago I posted on a TechCrunch post that "called out" Twitter on their architecture. Twitter responded here with a pretty standard "things are screwed up but we're trying real hard to fix it" post. I don't have a problem with that, I think its their best course of action at this point.
But one response did bug me. Here's the quote...
Q: Is it true that you only have a single master MySQL server running replication to two slaves, and the architecture doesn’t auto-switch to a hot backup when the master goes down?
A: We currently use one database for writes with multiple slaves for read queries. As many know, replication of MySQL is no easy task, so we've brought in MySQL experts to help us with that immediately. We've also ordered new machines and failover infrastructure to handle emergencies.
Honestly, this is one of the things that really bothers me about the startup community. There's this idea of "we use Open Source even if it's not up to the job."
The tasks that Twitter has "brought in MySQL experts to help with" are tasks that one person could easily do with a MS SQL or an Oracle database. Even someone with very little expertise could get through it with a $40 book or a $245 support call. Say what you will about MySQL being free there's just no way it's cheaper in the long run.
Not only that, feature for feature even the Standard Edition of MS SQL Server (Retail Price $6,000) handily beats MySQL. I'm all for using Open Source Software but not if it means creating inferior technology.
Here's the thing. There are a lot of technology tasks that Enterprises do badly. But the one thing they do well is to keep things running. My cynical nature suggests part of the reason for that is because a "non-techie" boss won't realize if your system is badly designed but will realize if it isn't up. Whatever the case, Enterprise customers look for solutions that don't go down.
So while the Web 2.0 world is better off blazing its own path in aspects of social design and user interaction they can learn a lot by emulating Enterprise in areas of IT infrastructure.
For the record...Though it has nothing to do with the post I feel the need to give a quick thanks to Microsoft. As a non-profit Microsoft gives us very generous terms (95% discounts in most cases). So when I was faced with this decision it was a lot easier to pick the more capable system which in turn made it a lot easier to focus on solving actual problems rather than administering databases.