There’s an interesting dynamic going on right now in the DBA world. MySQL’s growth and installed base, as a function of its size three or five years ago, is perhaps five if not ten times larger than it was. In 2002 when Pythian’s MySQL services launched, we took on the platform at the explicit request of an existing customer that was primarily an Oracle shop, but that was adopting MySQL for some bolt-on systems. (Pythian trivia moment: That customer is one of ten customers that Pythian has retained from 2002 or earlier right up until today).
Today, MySQL is our fastest-growing practice in terms of new customer acquisition.
The point I want you to take away from that is simply this: there are about five to ten times more high-value environments running MySQL in the world today than there were three years ago.
Most of you working in database administration know this all too painfully already: it’s hard to find an entry-level DBA role in any company. Most responsible technology managers entrusted with high-value environments demand DBAs with a minimum of three to five years production experience. Search craigslist for DBA jobs for a confirmation of this fact.
Together, this means that the population of database administrators that IT managers want to manage their high-value MySQL databases is limited to those DBAs that were already running MySQL three or five years ago. Which is too few to satisfy market demand by a factor of five to ten times.
See my point?
So what’s an IT manager to do? Well, MySQL is just one embodiment of relational database technology. Why not take a DBA that knows the DBA job function inside-out: from project planning, to budgeting, to hardware selection and scaleup and scaleout techniques; someone with expertise in data modeling and developer support; someone who has done many dozens of disaster-recovery plans, tests, and actual recoveries in times of crisis; someone who knows how to responsibly handle an outage while on-call; but someone who has most of their experience on another platform, such as Oracle or SQL Server!
The fact of the matter is, the discipline of database administration is largely coherent across any platform. The syntax and quirks of the platform are a much less steep learning curve than the business of professional database administration is. And the years of experience are there to prove it. Think of it like a C++ programmer turning to Java: if they’re brilliant in C++ you know they’ll learn the language easily. Oracle to MySQL or SQL Server to MySQL is much like that.
Meanwhile, in the Oracle and SQL Server world, both of which are doing very well, we’re just not looking at multiples in adoption over the last three to five years. So basically, the supply and demand for the market are largely in sync and have grown together.
Simultaneously, MySQL’s stealth-mode for adoption means that more and more shops are choosing heterogeneous database strategies that include MySQL in some capacity. Pythian has several customers running all three platforms, either through adoption or acquisition, and over two dozen customers running MySQL alongside another DBMS, some of which would certainly take you by surprise.
You might easily imagine that the lack of DBAs that can credibly speak to their ability to manage ambitious MySQL environments might also have another impact: one of decelerating MySQL’s adoption while the engineering expertise levels available on the market catch up. This is the sort of insight that informs MySQL’s Free training and certification for Oracle DBAs. There is no other rational reason why would they do this, if there weren’t a pressing need to get more DBAs up to speed with how to manage this technology.
So that DBA boot camp was given by Ronald Bradford, who also published a great blog post on Learning MySQL as an Oracle DBA. I hope that by covering it here, I can bring it to the attention of a few more of you Oracle DBAs out there.
The first comment in response to Ronald’s post comes from an otherwise anonymous reader calling himself “yay,” has the smack of sour grapes about it, and I think it serves to highlight why an Oracle DBA might indeed look at an opportunity to learn MySQL administration. It reads,
Funny, why an Oracle DBA would like to learn MySQL?, heh :) . A waste of time. Heck, views and stored procedures are still a new thing on MySQL world. Pfffff.
Ronald offers his own reply, which I leave to your reading, but mine echoes his at least in pointing out the most obvious reason: pragmatism. Being faithful to any one DBMS technology (just as any one programming language or OS) is very limiting and blinding. No engineer in meatspace would be so foolish (imagine!), so why should we in software? The MySQL market is very strong and likely to grow stronger, so there is a demand for qualified MySQL DBAs. If you like working as a DBA, and want to improve your career prospects, you do yourself a favour to learn MySQL.
Take a look at the
traffic patterns from alexa comparing Oracle and MySQL. I include a thumbnail from the graph here:
Obviously, a company’s web traffic is only one indicator of the rate of adoption. There are many more factors to be considered and if you think this data alone proves much, that’s your conclusion not mine. But it still serves a purpose to note:
- Five years ago, Oracle.com generated five times more web traffic than MySQL.com.
- From mid-2003 to mid-2006 they did a bit of a dance, trading the lead.
- Since then, there has been some rapid large-scale adoption and the web traffic shows it.
Another data point worth noting is that roughly three out of every four job postings on the MySQL Jobs Forum is a MySQL DBA job. This points to a serious supply-demand mismatch in the market for DBAs.
So, in my opinion, that’s ample reason why an Oracle DBA, or a SQL Server DBA, might want to learn MySQL.