That was an issue I had with the post: how can "non-relational" be a good thing about CouchDB? If you have relational data, then there's an entire theory (relational algebra) behind ways to interact with it that have clearly defined semantics. I can see that one may decide they don't need that, but I don't see how it's absence can be a good thing. Being non-relational frees CouchDB to provide different kinds of capabilities, but it's those capabilities that are a good thing, not the lack of being relational itself.
Rather, I think the author has confused "relational" with a lot of other properties of relational databased management systems - such as transactions and data integrity guarantees.
You're right that I was lumping transactions and data integrity guarantees in with "relational". I was thinking about normalization, and protecting data integrity in ways that lead to joins and transactions.
Re:Goodbye, CouchDB
by itaborai83 on Thursday May 10, 2012 @03:30PM
(#3955467)
You made me think about something. A CoffeeScript like approach to build a saner language that would sit atop SQL would be something definitely worth having. Maybe this could be the start of the "OnSQL" movement. Just my thoughts.
Check out Microsoft's LINQ: http://msdn.microsoft.com/en-us/library/bb397906.aspx
Well, SQLAlchemy is designed just for that. In the words of the author:
> Like "power steering" for SQL. Doesn't teach you how to drive!
Being able to parameterize table and column names in queries would be a big help.
Re:Goodbye, CouchDB
by itaborai83 on Friday May 11, 2012 @10:37AM
(#3959374)
It could have a sharding aware data definition language and some support for "on-the-fly" data migrations.
I'm not by any means saying that the NoSQL movement as a whole is a fad - there's good motivations behind some of these products - but a lot of people who are just ignorant also seem to have hopped onto the bandwagon.