What I like about the NoSQL crowd

2009/11/05

Although I am not a big fan of the NoSQL movement (mostly because many of its advocates use arguments I do not agree with) there are a few things that I like about the NoSQL crowd and I want to write them down*. Most of what follows stems from discussions through the years with our DBA and some friends who are members of the “Greek Database Mafia“.

For more than two decades the dominance of the relational model (even though no commercial system fully implemented it) was undisputed. Nobody ever got fired for choosing a commercial RDBMS for an application, where instead one would look suspicious if one dared to propose something different. This situation is no different than what Rob Pike described in “Systems Software Research is Irrelevant” for Operating Systems:

  • For example it took 10+ years for the R-Tree to enter the commercial systems, although it was solving a real problem. In the meantime if you were lucky and your system offered extensibility you could write it on your own.
  • No matter how novel the system, for it not to be marginalized it had to have an “SQL layer”. No SQL queries, no sales. Provide an SQL layer and all innovation of the product stays unused.
  • Ones proposal for an RDBMS purchase had to be among three or four commercial products. Anything else would likely be considered “a hacker’s choice” because “We make money! We cannot go that way!”

You could say that databases outside academic research had come to a halt. You don’t believe me? Just ask Yannis Ioannidis who uses to say that “Databases are dead in the most emphatic way when he wants to stir things up in a conversation.

And this is what I like about the NoSQL crowd (== implementers, advocates and integrators) . They do not care about established standards. They are not afraid to experiment in a “real environment”. Some of them may focus on a single problem and solve it well. Others may aim at a wider range of problems. But no system is stopped from being developed and deployed because it not “SQL compilant” or not relational. And even though some of these solutions resemble CODASYLo, once again there is action in the field.

But please people, stop marketing them as a “one solution fits all”. For we will again end up in a stagnation era, just like when everyone was storing stuff in an RDBMS for lack and fear of better suited solutions. They do not invalidate relational systems. They fill in the gap left by them.


[*] – As I had promised.

[†] – By the way, did you know that GROUP BY works outside of the “relational box”?

[‡] – I have heard him say this while giving a speech.

[o] – “one usually gets a low-level record-at-a-time DBMS interface“, says Mike Stonebraker.

About these ads

20 Responses to “What I like about the NoSQL crowd”

  1. agou Says:

    How great was Pike’s text. No wonder his classic book is one of my all-time favorites.

    Having said that, I disagree with him (and to a lesser extent with your post) in that computers are meant to be tools to get a job done. Much like cars. So it’s correct to stick with what works. Or with what works best, I might add.

    Pike states that the art is lost and that research is irrelevant. I would say that art is irrelevant.


  2. This is a very timely post, since today there is a related discussion over on Hacker News on Stonebraker’s post from yesterday:

    http://news.ycombinator.com/item?id=923260


  3. [...] This post was mentioned on Twitter by Yiorgos Adamopoulos, hrjn_rss. hrjn_rss said: What I like about the NoSQL crowd: Comments http://url4.eu/hRkl [...]


  4. [...] I haven’t posted in a while, but if you’re looking for a short, good read, check out What I like about the NoSQL crowd. I couldn’t have said it better [...]

  5. Brian Says:

    Great post. I hope there aren’t too many NoSQL people out there marketing these new datastores as a “one solution fits all.” That is definitely not the case. In fact I’ve seen the NoSQL term referenced not to mean “No SQL” but as “Not only SQL.” The second translation is a kinder, gentler message and perhaps fits the temperament of the movement a little better. Generally speaking we are somewhat more “relaxed” than most.


  6. Social comments and analytics for this post…

    This post was mentioned on Twitter by hrjn_rss: What I like about the NoSQL crowd: Comments http://url4.eu/hRkl

  7. Salvador Fuentes Says:

    I’m a NoSQL supporter, but I keep hearing similar post that describe people who see NoSQL alternatives as “one solution fits all”. Who are these people? I personally have not come across them, and I’m quite surprised its become such an issue that the NoSQL term/buzzword needs to be more clearly explained and justified. These people obviously don’t understand these new systems. To some *extent* database systems are like programming languages … tools designed for a certain problem domain. We should *all* understand them and *use* them where appropriate.

  8. Jeff Darcy Says:

    I don’t see many NoSQL advocates saying their one size fits all, largely because most have become quite accustomed to (and resentful of) folks like Stonebraker and Starkey claiming that *their* one size does fit all (or will once they’re finished working on their next magnum opus) so this NoSQL stuff is all silly. Mostly there seems to be a celebration of choice – that Dynamo is not quite like PNUTS, that Redis is not quite like Voldemort, that MongoDB is not quite like HBase, that some stores are optimized for large reads and others for small writes, that there are different data models and CAP tradeoffs everywhere, and so on.

    It’s like we’ve all been locked in the same room for two decades, and now we get to explore the rest of the city. That’s how I feel about it, and I get the strong impression I’m not alone, but YMMV.

  9. Salvador Fuentes Says:

    Well personally I like Stonebraker, even though his recent article didn’t read too kindly. :) He’s obviously a smart man with a creditable history when it comes to database systems, so any intelligent person will care to *listen* to what he has to say. However, I consider BigTable (Google) to be a part of NoSQL, and I wouldn’t consider their work silly. They are intelligent engineers as well and that’s an understatement. Furthermore, “one size fits all” obviously doesn’t apply if Mr. Stonebraker has Vertica AD *and* VoltDB. Or was it intended to mean “one size fits all for OLTP”?

    Regardless, I share your refreshing feeling of this DBMS renaissance age/time.

  10. Arun Srini Says:

    good one

  11. adamo Says:

    @agou:
    I generally agree with you that one has to use the right tool for the right job. It is just that sometimes the general perception is so strong about what the right tool is that one feels defenseless. That is the case with operating systems without POSIX layers (I do not know about mobile phones and PDAs though) and that was the case with RDBMS.

    And do not forget that just like cars who have race boys the same stands for computers too.

    @Salvador Fuentes:
    “Who are these people?”

    People who need persistence and who achieved that by using an RDBMS not as a relational system, but as a tabular one that could be queried over SQL. And did that the wrong way. Real example:

    SELECT name,surname from table WHERE lang1=’English’ OR lang2=’English’ OR lang3=’English';

    You get the picture. But if the above seems clueless (which it most certainly is), even people with a clue.

    @Jeff Darcy:
    “It’s like we’ve all been locked in the same room for two decades, and now we get to explore the rest of the city.”

    It is exactly what I am feeling. But I also feel that somehow we are reinventing what locked us into the room.


  12. [...] when a relational database is the only tool you know, every problem looks like a thumb.  NoSQL is making people aware that there are other options out there. But we’re not anti-relational-database for when that really is the best tool for the job; [...]


  13. [...] What I like about the NoSQL crowd'And this is what I like about the NoSQL crowd (== implementers, advocates and integrators) . They do not care about established standards. They are not afraid to experiment in a “real environment”. Some of them may focus on a single problem and solve it well. Others may aim at a wider range of problems. But no system is stopped from being developed and deployed because it not “SQL compliant” or not relational.' I've been trying to figure out if the NoSQL crowd represented the tip of a new type of software development – that is, a subtle shift in the way "makers" perceive the job and tasks of developing software and what that means for the rest of the software world – like open source or project management tools. The gut-check to feel out is, "these guys are making weird assumptions and doing strange things that make no sense to me as far as something 'you'd want to do." [...]


  14. [...] Is there anything to like about the NoSQL crowd? Maybe! [...]


  15. [...] a relational database is the only tool you know, every problem looks like a thumb.  NoSQL is making people aware that there are other options out there. But we’re not anti-relational-database for when that really is the best tool for the job; it’s [...]

  16. Jeff Darcy Says:

    Salvador: I don’t think Stonebraker goes far enough. Yes, he said “one size does not fit all” but he doesn’t seem to extend that beyond one set of CAP/ACID tradeoffs. You can have any kind of army boots you like, but you can’t have running shoes. ;) There’s also a whiff of “only I’m allowed to disrupt this status quo” in his essay about NoSQL. Does that clarify?


  17. [...] problem looks like a thumb.  NoSQL is making people aware that there are othe&…. But we’re not anti-relational-database for when that [...]


  18. [...] when a relational database is the only tool you know, every problem looks like a thumb.  NoSQL is making people aware that there are other options out there. But we’re not anti-relational-database for when that really is the best tool for the job; [...]


Υποβολή απάντησης

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

WordPress.com Logo

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Log Out / Αλλαγή )

Twitter picture

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Log Out / Αλλαγή )

Facebook photo

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Log Out / Αλλαγή )

Google+ photo

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Log Out / Αλλαγή )

Σύνδεση με %s

Follow

Get every new post delivered to your Inbox.

Join 1,649 other followers

%d bloggers like this: