
SQL vs. NoSQL: you do want to have a relational storage by default - vkhorikov
http://enterprisecraftsmanship.com/2015/11/06/sql-vs-nosql-you-do-want-to-have-a-relational-storage-by-default/
======
jhugg
I care so much less about the data model. Document or Relational: I can see
different apps preferring one or the other.

Two things are interesting to me:

1\. What's the consistency model? Is NoSQL really NoTxns? Whether you need
transactions or not probably affects your decision more than tables vs docs.
Similarly if you still want some partial functionality in the face of larger
failures, maybe forgoing consistency is worth it. (Note that some NoSQL
systems support strong consistency and some relational systems don't).

2\. Is your query language as powerful as SQL? First, SQL is not a great
language, but it's probably still better than whatever your NoSQL store is
using, once you move beyond CRUD and very simple filtering. Declarative
queries with an optimizer is the right choice for most applications. The
expressiveness once you get to "group by", joins and subqueries is difficult
to replicate in a programatic query language.

You may not _like_ SQL. That's fair. But there's a reason it seemingly can't
be kept down. See CQL, Impala, SparkSQL, F1/Spanner, Presto, etc... Couchbase
has been the most recent "oops" with their N1QL introduction and near complete
messaging reversal (on this issue).

------
sklogic
> you do want to have a relational storage by default

No I do not, thank you very much.

> The concept of NoSQL databases has been around for a while

For far longer than the concept of SQL databases.

> Alright, so are NoSQL databases really schemaless?

All the classic document-oriented systems had very strict and complex schemas.

> The first one is data (referential) integrity

Enforced by a schema. SQL is not any special here.

