What with all the news of late, one could be forgiven if they saw everything in the context of open source databases. The question that seems to be on everyone’s minds is: what gives? Let’s try and answer that by answering a few other questions.
Q: Why is every vendor either pursuing an open source DB or responding to them?
A: Well, I hate to say that it’s all about barriers to entry, but it’s all about barriers to entry – at least in terms of the macro drivers. For the past few years, commercial suppliers could successfully compete with their open source counterparts by claiming a clear lead on the bells & whistles scale along with better reliability and support. And if the comments from the CIO panel at the recent OSBC conference are anything to go by, they still can. But the writing would appear to be on the wall that those arguments are weakening. Lost in the chaos amidst the Oracle/InnoDB acquisition – probably as Oracle intended – was the introduction of enterprise class features such as triggers, stored procedures, etc in MySQL 5. So while the DB2’s and Oracle’s of the world can and will continue to differentiate themselves on a feature/function and enterprise reliability basis, the gap is narrowing. And you don’t have to take my word for it: here’s a CIO’s take.
Q: So how have the commercial suppliers responded?
A: By reducing one barrier to entry: making or considering making their products free. As Mike points out, they’re doing so somewhat reluctantly and half-heartedly. To date, the folks from IBM and Oracle have shown little inclination to open the actual source of their high end commercial products – thus removing another important barrier to adoption – but I chalk this up, personally, to a lack of incentive. Whether or not the release of free-but-not-open-source-ware will be a significant enough lowering of the barrier to stave off the open source insurgents or at least stall their growth remains to be seen, but my bet would be that it’s not – particularly for the offerings that are intentionally crippled to run in limited capacities.
Q: Well, is there room for a multitude of open source databases?
A: Probably not. We’ve seen, for example, very little interest in Ingres despite the million dollars thrown at that problem, and we’ll have to see how the sale of that asset will affect it going forward. Lowering your barriers to entry via open source is an excellent strategy, but once everyone follows suit it obviously ceases to be a significant differentiator. At that point, it’s up to the product – and its attendent community if its not a dual licensee, and sometimes even if it is – to differentiate itself. The specialized folks such as db4objects or Sleepycat have an easier time of this, because they take relatively unique approaches to the problem of information management – OO and non-relational respectively – but in the general purpose RDBMS market the challenge will be simultaneously competing with commercial suppliers trying to move downmarket and other open source competitors.
Q: What does this mean for customers?
A: Increased choice, probably, but more importantly a lot of innovation. The impact of MySQL to DB2 and Oracle has been significant and observable – just take the “free” announcements from the two of them – and if PostgreSQL can begin to push MySQL in some accounts, it will be interesting to watch.
Q: What’s the most interesting piece of news, in your opinion?
A: Probably the Sun/Postgre news. The context makes it interesting from a Sun perspective, and it will be interesting to observe the longer term impact to Sun’s software business as it has database story for the first time, but I’m actually more interested in it from a Postgres perspective. I’ve been hearing some very interesting positive feedback on the performance of Postgres versus MySQL, although Bruce does have questions about its architecture. Pervasive was already in this market, and now Sun’s joining them. As I told them when I first was made aware of the plans, I think they’ve picked an interesting database at an interesting time – but more on that later.
Q: What does this all mean for MySQL?
A: Probably not much, at least initially. They’re the default on so many ISPs, for so many different packages, that as I discussed when InnoDB was acquired I think they are rather well insulated at least from a tactical perspective. Plus, MySQL has some folks working for them – Mickos and Urlocker specifically – that are as good as you’ll find in this industry, so I think they’ll be fine.
Q: What should the commercial suppliers do to compete?
A: Well, wherever it’s possible, don’t fight the tide: strongly consider open sourcing all or part of your product. But given that many commercial entities will not see that as a viable option, I’d recommend that short of that they do everything in their power to make their database dead simple for developers to work with. I’ve noted with some admiration previously db4objects strategy which is to position itself as a development database that allows rapid productivity, because I remember all too well from my SI days what the likelihood of the database being swapped out when it goes to production, and that’s a goal I think all of the providers should shoot for. Win the developer, and often as not you’ll end up in production.
Q: While we’re on the database topic, any other trends to watch?
A: Native queries. Some of you may have seen the quote I provided for the db4objects press release here, but I ‘m very interested to see what developers make of the ability to access data stores using their language of choice rather than SQL. SQL’s an immensely powerful language, and not terribly difficult to learn (at least the basics), but does require a change in gears for developers. As the excellent Jon Udell says in LINQ 101, which is Microsoft’s equivalent in native querying, it can turn querying inside out.
Disclaimer: Of the above mentioned firms db4objects, IBM, Microsoft, Pervasive, Sleepycat, and Sun are clients, while MySQL and Oracle are not.
Update: Was linking to the wrong db4objects release – thx Christof.