In November, I looked at Oracle's purchase of InnoDB, as well as their release of Oracle Express, and the effect on MySQL. In short, I concluded that the positives for Oracle were clear, but that MySQL must be feeling outmaneuvered. Since InnoDB, with its full transactional capability, has become an integral part of their product offering, I suggested that both BerkleyDB (their first transactional storage engine, but which has never got beyond so-called gamma status) and MaxDB (what was SAPDB, which is a fully-featured database but does not yet integrate well with MySQL's other products) had both become critically important.
Shortly after Oracle purchased InnoDB, MySQL vice-president Richard Mason acknowledged that MySQL were "evaluating options to replace that functionality in some way," but that they were "not at the point yet where we can go public with what that plan is but we will be shortly."
However, since then Oracle has upped the ante even more. On February 14th, Oracle purchased Sleepycat Software, who provides MySQL with the Berkeley DB transactional storage engine. Furthermore, in the last few days, rumors have been flying that Oracle also intends to purchase both Zend ('the PHP Company'), as well as JBoss. I believe this is another smart series of moves by Oracle that can only benefit them.
Serious threat to MySQL
Their purchase of Sleepycat enhances their embedded database product line, but is also a serious threat to MySQL. MySQL's newfound credibility, painstakingly built up culminating with the release of version 5, is now at risk. With both their key InnoDB and BDB storage engines now owned by a rival company, MySQL's obvious options are limited to two. They can either develop their own transactional storage engine, which would not be a trivial task at this stage, and many commentators believe is beyond them. Or, they can very quickly integrate with MaxDB. SAP licenses the software to MySQL, and the two companies jointly develop and market it. SAP will also be feeling the heat from all of Oracle's moves, and it is likely that they will increase their efforts in supporting MySQL with MaxDB. To date, there has been very little progress in integrating the two. The MaxDB Synchronization Manager allows data to be inserted into MySQL, but the reverse process, moving data from MySQL to MaxDB, and which according to the MySQL documentation was meant to be completed during 2005, has still not seen the light of day. Oracle could of course continue to support MySQL by continuing to develop either or both of InnoDB and Berkeley DB. However, the uncertainty is probably enough to keep most enterprise clients away from MySQL. Oracle could then either attempt to purchase MySQL (perhaps at a lower price), or keep it constrained and unable to make much of an impact in any of Oracle's markets.
An important distinction is beginning to be made, between companies that are fully in control of the software, but release it under an open source license, such as MySQL, and open source software that is community-controlled. The other open source databases (in particular PostgreSQL and Firebird) are likely beneficiaries of both this realization and the growing threats to MySQL. Both are not tied to a single company, as MySQL is to MySQL AB, nor are they as reliant on 3rd-parties, and so they are less vulnerable to any direct or indirect threats. Firebird has just released version 2.0 in beta, and its imminent release as stable could be a great opportunity for Firebird supporters to try to gain some momentum. PostgreSQL meanwhile has always had a reputation as a solid database, and has a stronger community than Firebird, so could also be well placed. Many smaller open source projects still rely entirely on MySQL, and many will now consider it prudent to support one or more alternatives as well.
In spite of all the challenges, MySQL has just secured an additional $18.5 million in funding and financially is in a very healthy position. Some have even suggested that MySQL itself being a potential takeover target of the cash-flush Oracle does it no harm in attracting funding. This may be true of Intel, as well as other smaller investors, although in the case of SAP, one of the major investors, it is likely that their motivations are rather different.
The rumored purchase of Zend is also an important one for MySQL. MySQL/PHP make up two important components of the LAMP stack, and not only are MySQL's storage engines being bought out by Oracle, so is Zend, the company behind PHP, the language that in partnership with MySQL becomes the basis for most web development, and which is currently estimated to be installed on around 15 million servers. Oracle and Zend are no strangers. Earlier this year, the two undertook a joint agreement to provide integration between Oracle and PHP. If MySQL's integration with PHP began to lag behind that of Oracle, it would be a serious blow for MySQL, as much of MySQL's momentum came from its close association with PHP. Perhaps this is what Oracle has in mind, with the recently-released Oracle Express ready to capture the low-end of the market. SAP is currently a strategic partner and major investor in Zend, and this move is another that affects SAP as much as it does MySQL. It is important to understand though that Zend and PHP are not the same thing. Zend contributes to PHP under a BSD license, and no company owns this. This limits the potential harm that Oracle could cause
Oracle competing with much bigger fish
Oracle's moves are quite clearly aimed at much more than just MySQL. They are looking to compete with IBM and Sun, who both began to embrace Open Source software a lot earlier, with varying degrees of success. Oracle's Linux strategy has been reasonably successful, and they are aware of both the impact OSS is having on their to-date core business of selling software licenses, as well as the possibilities of moving to a subscription model based on OSS.
JBoss has been making a minor dent in the enterprise middleware market, often in collaboration with MySQL. They recently acquired the Arjuna Transaction Service Suite, and were planning to release it under an open source license in the first quarter of this year. Again, this potential purchase benefits Oracle in many ways. Competitive software is now brought into the fold, and users can be steered towards using Oracle as a database rather than MySQL. Oracle may or may not go ahead with releasing the Arjuna software as open source if they went ahead with a purchase. JBoss has done the hard work of building the product and building a community. With a takeover, Oracle could see the opportunities for gaining some revenue, or it could be a defensive move to prevent further penetration of their core markets.
Oracle contains some smart strategic thinkers. Much of the knee-jerk reaction to the recent news was based on the belief that Oracle is essentially an ignorant ogre, ready to come blasting in, riding roughshod over the existing community, or of doomsday scenarios of PHP being bought and then shut down, both of which are nonsense, and the latter not even possible. If Oracle stopped all support for PHP and JBoss, the software could easily be forked. JBoss, for example, is released under the LGPL. Oracle though would not be committing the large amounts of money it has to date if it believed it would lose the community around the software it is purchasing. Just like IBM, Oracle aims to develop a good relationship with the software's communities, as well as the greater Open Source community. IBM, Oracle and Sun are all beginning to embrace open source in a similar way. Microsoft has been the most rigid of all, still being strongly tied to the software licensing model. For this reason, it is still the main target amongst the more ideologically driven Free/Open Source Software advocates. To varying degrees, IBM and Sun are seen as friendly to the open source community. Oracle wants to enhance its standing, and will treat its newly acquired communities with respect, looking to integrate their work and of course leverage it for the company's own benefit. Oracle gains nothing by destroying the community, especially when its main competitors are not small fish like MySQL or JBoss, but rather larger ones such as IBM, Microsoft and SAP. It is interesting times indeed, and time for some strategic leadership from MySQL.