HACKER Q&A
📣 MathCodeLove

Is NoSQL Still the Wave?


Are NoSQL DB's like Mongo or Dynamo still popular and viable options for a database? It seemed as if a year ago everyone was advocating for them. I see less of that now, but I don't see anyone giving me a legitimate reason not to use them either.


  👤 gregjor Accepted Answer ✓
Ideally you choose a database carefully based on requirements, known and reasonably foreseeable. You should carefully consider what you gain and what you give up by choosing a non-relational database, because that probably sits at the core of the application. Don't just follow fads or worry about what seems popular at the moment.

👤 databrecht
It makes less sense to categorize them as NoSQL. It implicitly means 'eventual consistency' and 'no relations' depending on who you ask. Some of the 'NoSQL' databases offer some consistency features, other distributed scalable databases nowadays provide relations and strong consistency models (FaunaDB / FoundationDB / CockroachDB / Spanner) although we would be tempted to categorize thos as 'NoSQL', or 'NewSQL' (but not all of those offer SQL), these terms imho don't really make sense anymore. Some of the older 'NoSQL' databases even start to add consistency features or some form of relations. In other words, the difference between NoSQL and SQL is fading. How good a database can support certain features at scale is what matters, and that depends on the algorithms behind the database (there are many approaches). Imo, look at the algorithms not at the buzzwords such as 'NoSQL'.

There is still a need for databases that are built for scalability (and there is a growing need for those that work well together with serverless), but in many cases, there is no need to abandon consistency since new algorithms make it possible to have consistency, relations and low latency.


👤 jlangemeier
I think that the hype has slowed down around NoSQL, much in the same way as it happens around most technologies.

There are still very solid use cases for Mongo/Couch/Dynamo/GraphQL/etc. it's just that the hype train of "use NoSQL for everything, even situations that are tailor made for row/column stores" has quieted some (there's still pockets of "OMG MAP-REDUCE ALL THE THINGS").

I think the combination of the drop in hype, along with the ability to see gains with things like PostgreSQL (and others) handling JSON blobs well has made people actually evaluate trade offs a little bit more sanely.


👤 duxup
I think generally speaking now the talk surrounding NoSQL involves the use case more often than not. And that's probabbly how it should be.

Plenty of situations out there where I hear about people using SQL and NoSQL nearly hand in hand depending on what you need to do.

I think the hype has quieted and they're just another tool as they should be.


👤 wsh
Still the wave? More like the endless summer: IMS remains an IBM program product, as it has been since 1969, though the license fee has gone up a bit.

There have been, and will continue to be, many ways to store and retrieve data without row-column relations or SQL. As others have noted, the key is to understand the application requirements, and to use the right tool for the job.