Posted on 3 Comments

On Oracle (and MySQL), Enterprise, Suitability and Sense

50 things to know before migrating Oracle to MySQL by Baron Schwartz is an interesting read, it points out clearly that MySQL is not Oracle. However, Oracle is not the benchmark by which all others are to be judged. So what do we compare with, or actually, why do we compare at all?

Hmm, so we take three steps back, and get a much better view… Marten Mickos (MySQL CEO from 2001 until the Sun acquisition in 2008) said it all along “MySQL does not compete with Oracle”. I don’t think people actually appreciated what he was saying, or even believed that he meant precisely what he said. They might have thought “oh that’s just positioning and protesting too much to make the opposite point”. But he wasn’t, it was the clear plain truth and it still is today (and so it should remain, I think).

In my conference talks and community relations work at the time I described the same thing differently. The only way to compete with Oracle is to become Oracle, and why would you want to do that? Oracle is already very good at being Oracle, because they are Oracle. Seen on the business level, trying to compete head-on against an incumbent tends to not be a winning proposition, even if you’re cheaper. It’s not really smart business at all.

You don’t have to be Oracle to be a valid choice for many deployments, or “horses for courses” as the Australians love to say. MySQL does many things differently, which -in part by chance and in part by being in the right spot at the right time- has allowed it to become one of the core components of the modern web world. And it’s doing very well there (and beyond), as we all know. And I’m judging this is on sites and business relying on it and doing well, not anyone in particular making money off MySQL as that in my opinion is not relevant for judging success (that said, there’s plenty of profitable and sustainable business in the MySQL space).

MySQL doesn’t have to be suited to every possible need, and its not suiting certain needs is not a failure. A knife and a screwdriver are both useful types of tools, but they are not interchangeable in terms of purpose. You can cut some things with a screwdriver, and you can try to turn a screw with a knife, and sometimes such uses even make sense – but it can also get rather awkward, break the tool, cut your hand, and so on. It’s not necessarily pretty.

MySQL has a different market from Oracle, and that is why they are not in direct competition. It’s not about low end and high end on a single scale, it’s quite different in many aspects. You may try to simplify it if you want, but you won’t capture the essence of it all. There is a bit of market overlap, and there are also historical deployments of Oracle where it might not have been the most suitable choice (using a knife where a screwdriver might have worked better). So, in some fairly rare cases (seen over the huge numbers of both Oracle and MySQL deployments) some people have a choice where both are suitable, and in some cases migration makes sense if the wrong tool was getting used in the first place. But again you don’t want to generalise either.

Presenting to government about migrating from Oracle to MySQL should really be seen in the context of the above two corner cases, and not as a general pitch of “MySQL can replace Oracle”. ‘cos that’d be ridiculous, right? I know that some sales people would love to close even more such big gigs, but you shouldn’t sell something into an inappropriate space. Related communications have muddied the waters somewhat, and I really think that’s unfortunate. It has set expectations and a focus in “the market” that is neither appropriate nor sensible, and in the 5.0 and 5.1 releases of MySQL we’ve also seen how that “reaching for enterprise” (whatever your definition of it is) has not been all that great.

By the way, the term “Enterprise” is as polluted as the term “Cluster”. They are both dreadful terms now to use for defining anything. You wouldn’t convey a clear concept at all, your picture of it is not the same as the person you’re talking with: you won’t be on the same wavelength!

The traditional Enterprise database market (defining it broadly as large corporations, government, defence) is a very small and limited space; lots of money there, but it’s still limited. There’s a much larger space out there, with very high demands in terms of rapid growth, larger numbers of concurrent users than any enterprise organisation has internally, and so on. “Enterprise features” and “Enterprise architecture” are not actually all that suited for those different needs, and in some cases they are hideously bad fits. This is why I bring up issues like SAN deployments. SANs are very good, but in the MySQL space they are generally (not always) the wrong choice. But someone thinks on a linear scale, reaches for the top, and goes for an Enterprise solution… must be good and they won’t get fired for it. Horay? Not.

Summary:
MySQL is not Oracle. MySQL is not Enterprise. MySQL is MySQL, it’s very very good at it, and the “usable market space” for its functionality is absolutely huge. If you’re wondering whether MySQL is good for your needs, just ask. Ask the tough questions relevant to you. And then judge it on its suitability for the particular purpose, not by some arbitrary scale or feature set of another product, or even generic corporate policy. Those comparisons are “easy”, but not relevant for your needs and they could cause you to pick the wrong tool for the job.

At Open Query we do get asked about these things, and we explicitly recommend other products over MySQL when we feel it’s most appropriate. We have an operational rule I’ve brought with me from long ago: “I’d rather have a happy non-customer”. For instance, for serious GIS (geospatial) applications, PostGIS (PostgresSQL’s GIS extensions) are far superior not just in the open source arena but also compared to the proprietary space. Horses for courses.

Posted on 3 Comments

3 thoughts on “On Oracle (and MySQL), Enterprise, Suitability and Sense

  1. The problem I have with this article is the fact it ignores the biggest elephant sitting in the room, being MS SQL Server. If Oracle is expensive, MS SQL Server is very right priced and huge amounts of functionality and I think sits very nicely between the other databases mentioned here

  2. “in between” would kinda indicate that a linear space again. I don’t believe it is.
    “among”, for sure. And PostgreSQL also.
    They each have their uses and therefore their space.

    But that was not the point of the story, was it. It was about the eternal comparisons of MySQL against Oracle. I didn’t mentioned other products because they were not relevant to this particular story. It was not an analysis of the overall database market, eh.

Comments are closed.