Hacker News new | past | comments | ask | show | jobs | submit login

There seems to be a lot of people who are building large scale, well behaved applications on NoSQL systems that are finding out "you know.. for a lot of these applications you don't need 'MVCC/ACID or nothing.'"



I mean, until they realize they did, right? [0]

Like I said, there's a place for those systems. Redis in particular is close to my heart. But many devs hear "NoSQL" and think "Great, I love JSON! Who cares about SQL, SQL is for fogies!"

I have little doubt that the staff at places like Google and Facebook are qualified to weigh the concerns and choose the system that works best for their use case. The concern is about the rest of us, and the rapid proliferation of experimental systems developed for internal projects at MegaCos whose demands make any off-the-shelf system untenable.

The fact that Google or Facebook release a project essentially as an academic exercise doesn't mean that it should come anywhere near mainstream use. People see "Facebook" or "Google" on the front matter and want to be like the cool kids on the block, hardly realizing the quagmire they're plunging into.

MongoDB gained prominence by claiming massively improved write performance and encouraged devs to switch off real databases for a system of record and then, woops, it turns out that "write performance" is sans-`fsync`. That's sort of fixed now, many years after the controversy, but they still built the entire NoSQL story on the back of that deceit.

As an autodidact who detests formal schooling, I hate to say it, but sooner or later, there is going to need to be some type of vetting/licensing at play here, both to stop the mindless proliferation of "grab anything Googly" and to hold those who engage in predatory behavior accountable.

[0] http://hackingdistributed.com/2014/04/06/another-one-bites-t...


Yes because SQL databases never fall over and are the pinnacle of modern software engineering.

And there is nothing worse than people who think that when other developers are making technical decisions it is because of hype and not some reasoned judgement.


> NoSQL products like DynamoDB, Cassandra, Redis, MongoDB

As a DBA ...

Cassandra is despised. And I would say Postgres is growing a lot faster than MongoDB. Redis caching and zsets power the Internet now.

NoSQL, in general, has a much more limited set of mgmt. tools and has fallen out of favor recently for SoT.

> SQL databases never fall over and are the pinnacle of modern software engineering

Well, RDBMSs almost never fall over when you use SSD and indexes. And they really are the pinnacle of software engineering. Sounds like you're not a DBA.


Most of the time it is because is is cool and CV building, with zero business value.

Oh, and one gets to write Medium blog posts, organise conferences, sell books and consulting services, which might be the actual business value after all.


Note that "fall over" in the context of a mature RDBMS means that the database got slow because it wasn't properly tuned or administered, whereas in the context of NoSQL datastores, it may well mean "didn't write any data for the last five minutes, try to rebuild transactions from customer support tickets and your card processor's logs I guess????" or "woops, I just lost about $20 million in bitcoin". I think the potential tradeoff there is clear.


There is something worse, its resume driven development - which is where I see the majority of NoSQL databases used (on a single server with a few GB's of data).


Not every application will need MVCC/ACID eventually. As another commenter pointed out, you can always assert that RDBMS like features will always be needed and that NoSQL is considered "shiny thats why people choose it" but some people actually know what they're getting into and have made a reasonable informed decision on what kind of persistence their application will need and how to scale it.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: