The relational database - a mainstay of enterprise computing for 25 years - has been under siege. New approaches to data storage are threatening the RDBMS and precipitating what database guru Mike Stonebraker and others described recently as a "group grope" to find a new database engine.
This week, though, could mark the beginning of the backlash, with people defending the RDBMS against fashionable, quick-and-dirty products such as Amazon's SimpleDB, Apache's CouchDB, NextDB and Google's App Engine Datastore.
The catalyst appears to be a debate over popular blogging platform and LAMP flagship Wordpress flogging the database twenty times every time you refresh a page, even when there have been no changes to the elements on a page. Coder and Coding Horror blogger Jeff Atwood posited simply: "Doesn't that strike you as a bad idea? Maybe even, dare I say it, sloppy programming?"
Open source developer Jonathan Holland pulled up WordPress for installing a caching plug rather than fixing the problem at hand.
Holland, who said he understands the shortcomings of a relational database but also knows its strengths, concluded: "The bottom line is don't tell me RDMBS can't scale if you can't write a decent query or design a normalized database schema."
Elsewhere, evangelists have been taken to task for hype, by "fawning" and posting comments "verging on satire" in their support of the new wave - specifically, SimpleDB. Todd Hoff praised SimpleDB for eliminating much of the complexity of traditional RDBMS systems by dispensing with tiresome technicalities such as data schema and normalization. He said such things are unnecessary for many web applications.
Defending RDBMS, computer science student Ryan Park listed 10 reasons for avoiding SimpleDB, CouchDB and Google DataStore. Among them: data integrity is not guaranteed, complicated reports and ad hoc queries will require a lot more coding, and relational databases are scalable even with massive data sets.
"Mr. Hoff's supposed advantages are actually serious disadvantages to the paradigm. Before designing your architecture around a database engine like SimpleDB, it's important to consider the reasons not to do so," Park wrote.
He also added a useful reality check to supporters of SimpleDB by pointing out the poster children of Web 2.0 are founded on RDBMS: Facebook and LiveJournal are on MySQL, MySpace on Microsoft's SQL Server, and Salesforce.com uses Oracle.
Backing Park was software architect and technology writer Dennis Forbes, who drew a distinction between "web toys" and big "specialized databases" run by the likes of Amazon. "Until the day you build your own specialized database, an RDBMS is often a suitable choice," Forbes wrote in comments to Park.
It wouldn't be a tech debate, though, without the usual allegations of fanboydom, and so there were counter claims of too much RDBMS love. And such commentators will likely be unsurprised to learn that RDBMS vendor IBM also believes in the continued relevance of RDBMS, saying it has a place in web applications
The RDBMS is certainly facing new challenges, in terms of scale and provisioning.
Pioneers Stonebraker and David DeWitt themselves have argued in favor of replacing RDBMS - apparently putting themselves in the same camp as folks on the front like Holland, who accept RDBMS has limitations but who also recognize that "bad" coding can also create performance and scalability problems.
Such people, though, are taking a wait-and-see instead of an all-or-noting approach, favoring practicality and evolution over revolution.®
Additional reporting by Gavin Clarke