On the unhelpfulness of NoSQL
My favorite quote from last weekend’s OpenSQL Camp was something like this: “Calling a database NoSQL is like calling a car horseless. It isn’t descriptive.” I think the term NoSQL really needs to die. It is meaningless, divisive, overly broad, and just generally unhelpful.
Further Reading:






Hey, the term ‘nosql’ is here to stay. Deal with it. Stop whining about its ‘uselessness’. Everyone know what it means. Who the f#$k cares how is it called as long as it lets you do cools stuff.
So, people, instead of obsessing over the term, channel the energy into creating some killer-app :)
P.S. the field below the commet asked me to type ‘honk’ if I like sql. I HATE sql :), and at first I just took it at face value -> didn’t type anything :) => UI FAIL
Vitaly Kushner
16 Nov 09 at 6:43 pm
Hi!
I don’t mind the term much, but I agree it’s not descriptive. It has the clear disadvantage of confusing people as NoSQL has deceptively little to do with SQL as a language.
@vitaly: I don’t hear anybody whining. You’re claiming that “NoSQL lets you do cool stuff” but that is precisely the point of Baron’s post: NoSQL doesn’t let you do anything unless its clear what the term means exactly.
Roland Bouman
16 Nov 09 at 7:35 pm
my point is that at this stage everyone know that ‘nosql’ is a collective term for the new breed of scalable non-relational databases. but there is not a day comes by w/o someone complaining about the term. Realize that once something catches up it is very hard to change. Especially when you just say ‘this is bad’ w/o offering ‘something better’. And by better I don’t mean something more descriptive. You got to admit: ‘nosql’ is catchy. So unless the alternative is *at least* as catchy I think ‘resistance is futile’ :)
Vitaly Kushner
16 Nov 09 at 8:03 pm
@vitaly: gimme a break :)
First of all, the NoSQL term and “movement” is still so young (http://en.wikipedia.org/wiki/NoSQL) that it seems a bit ridiculous to suggest that “everyone” knows what is and what is not covered by the term.
Second, there is no such thing as “the new breed…” etc. Rather, there are a bunch of solutions to solve problems encountered managing availability, scaleability and concurrencey of very large data stores. So far, there are a few recurring features across these solutions: “schemaless”, “non-relational” – perhaps there are more, but I think these are the most important. However, none of these features is sufficient to define these solutions, so it is reasonable to quesion whether a “NoSQL” is indeed *necessarily* non-relational, schemaless, etc. In addition, the underlying datamodels (“key-value”, “document-based”, “graph”) are quite different from one-another, and just lumping everything together using a quite broad an general similarity (“doesn’t support SQL natively”) seems kinda weak.
You may think it’s catchy – I really don’t care much about the catchiness – I am interested in the capabilities, use-cases and limitations, and I think “NoSQL” doesn’t really do justice to these interests.
Roland Bouman
16 Nov 09 at 8:32 pm
OK, while I agree with most of your points (its indeed young, and they are all different, yada yada yada)
But this is all irrelevant. What I’m saying is that the terms is here to stay, and I couldn’t care less for the ‘name’.
Lets see what happens…
My bet: one year from now ‘nosql’ will still be here to describe it :)
Vitaly Kushner
16 Nov 09 at 8:46 pm
@vitaly: fair enough – perhaps you are right and the term is here to stay. Let’s leave it at that.
(PS: On rereading my previous comment, I realized that my last sentence there (“I am interested in…, and I think “NoSQL” doesn’t really do justice…”) might be misinterpreted: By “NoSQL” I meant the term – not the current movement and solutions mentioned. I am quite convinced that the people that design and create things like Cassandra, MongoDB, couchDB etc. are very clever, and know exactly what they are doing and why it makes sense to do it like that.)
Roland Bouman
16 Nov 09 at 9:13 pm
NoSQL is just VSAM/IMS warmed over; the last gasp of code-oriented zealots. The SSD multi-core/processor machine running BCNF database (MySql, or otherwise, take your pick) will blow such stuff away. What some call scalable, experienced developers know to be spaghetti. Scattered data (which is all scalable is to these people) is a cure for no ill. ByteBloat is caused by this silliness, and while rust based storage is cheap, it ain’t fast or efficient.
And while I’m at it, the NoSql folk are clearly unable to comprehend the simple math required to do relational database.
And no SQL isn’t perfect, but it beats the crap out of COBOL/java/PHP/etc. And, also no, it needn’t be (nor any data language) Turing complete.
Robert Young
20 Nov 09 at 8:33 pm