Oracle presented at OpenWorld on the use of MySQL for sharding. The presentation was targeted at large-scale (#shards >= 100) deployments of sharded MySQL. The presentation claims that Oracle is better than MySQL for such a deployment and lists some of the operational costs that exist in a MySQL deployment. I think the focus should have been on small-scale deployments as large-scale deployments have more financial incentives to make MySQL work.
Some of us were quoted (Monty, Baron, the pre-GA 5.1 manual, work by Facebook and possibly work by my employer) without the courtesy of an Oracle t-shirt or tickets to the OpenWorld party. Bah humbug.
The presentation had few details about the use of Oracle in a large-scale sharded deployment. Are there customers who use hundreds or thousands of shards? Does anyone write about their experiences?
Monday, January 12, 2009
Subscribe to:
Post Comments (Atom)


Their is always another side to every marketing claim like this. I have seen first hand how horriblely inaccurate some of these case studies or internal bake-offs can be. Lots of the work we do ends up NDA, so its tough to share too much detail. But I can say I have seen "Oracle" -vs- "MySQL" bake offs where hundreds of shards are used for MySQL and Oracle gets similar performance with an 8 or 16 node Rac cluster. That sounds impressive until you see that the hundreds of shards were running on old dual core machines with < 8GB of memory and a single internal disk vs 16 core 128GB of memory San connected Oracle Rac machines... Sometimes these benchmarks are just unfair.
ReplyDeleteHmm, I was quoted! But at least they attributed the quote to the book. Maybe there will be 1 book sold because of it. Thank you Oracle! Who needs a t-shirt!
ReplyDelete:) Baron
Having happily used Oracle in the past, it does have many extremely useful features that make it well suited for a large sharded site.
ReplyDeleteBut those features cost even more extreme amounts of money. This doesn't fit into today's financial reality. It is easy to spend tens of millions of dollars on Oracle licensing as Oracle charges by the number of cores in a CPU, not by CPU socket. For an Intel chip with four cores, that would be equivalent to 2 processors. For example, the list price is $5,500 per Intel core ($11,000 per processor) just for the partitioning feature.
For a bit more on this (as of 2007),
http://www.dba-oracle.com/t_licensing_pricing.htm
And for a more current price list:
http://www.oracle.com/corporate/pricing/technology-price-list.pdf
I did get a free ticket to Oracle OpenWorld.....and....it's a conference so big you get lost. It's really a place for the CEO to show us how big his...wallet is. Let's get some big celebrity on stage...who? Oh, that American Olympic swimmer who won gobs of gold medals! What does that have to do with Oracle? NOTHING.
ReplyDeleteHonestly, I can't disagree with most of their facts about MySQL -- even the somewhat sensationalist slide "MySQL Replication is Terrible" is factual.
But we could also write the slide "Oracle Replication is Terrible" and have it be factual too. You can't even use a standby server! Needless to say that replication isn't a sharding technology, because a slave is not getting different data from the master....
I'm amused by all the examples. Most major networking sites wouldn't be possible if they were run on Oracle.
WRT Google making its own replication changes -- again, true, but Google wrote its own damn database too. And, um, still doesn't choose Oracle for a major use (as far as I know).
The good news is -- Oracle sees MySQL as a HUGE threat, which is why they even bothered to release a paper such as this one. The truth is that Oracle does have these features out of the box, but you need at least one (and probably 2-4) Oracle DBAs just to keep the database running. With MySQL, for the first years, you can have a sysadmin or developer keep the database up, as a secondary job function. Oh, and the licensing fees of Oracle.
Note in the disclaimer it says that the information within shouldn't be used to make purchasing decisions. :)
This presentation would be improved with real-world examples.
ReplyDeleteTagged.com has a modest-scale sharded Oracle deployment with 8 servers. You might expect something larger given 5 billion pageviews/mo of social networking traffic, but we've kept the hardware small with careful tuning.
Oracle is very fast, stable, and manageable, but MySQL might still provide cost savings for some of the data.
Oracle bought Sun, who owns MySQL. Now Oracle owns MySQL. End of discussion.
ReplyDeletePeriod.
Lol, and why do you think Oracle bought Sun? for their hardware??? No they are desperate to control and limit mysql the same as they did with RDB (For those long in the tooth enough to remember the old Digital equipment leading database).
ReplyDeleteIt would have been bliss-ful had RDB taken over.
ReplyDelete