Live data from Hacker News

Goodbye, MongoDB

zopyx.de

11–20 of 123 posts

Re: Goodbye, MongoDB

#11
post #5

Wow, how many "Goodbye, MongoDB" stories are coming? The last days had several ones. Not sure if this is already a trend?

The trend is this: any loved technology that's been around a little while (Rails, Node, Mongo, etc) makes for dramatic farewells on hackernews. It's not unlike supermarket tabloids.

"Trough of Disillusionment"? http://en.wikipedia.org/wiki/Hype_cycle

Re: Goodbye, MongoDB

#12
post #5

Wow, how many "Goodbye, MongoDB" stories are coming? The last days had several ones. Not sure if this is already a trend?

The trend is this: any loved technology that's been around a little while (Rails, Node, Mongo, etc) makes for dramatic farewells on hackernews. It's not unlike supermarket tabloids.

I disagree. The trend is this: any hype has an equal and opposite anti-hype. 10gen have spent (probably) millions of dollars and countless hours representing MongoDB and singing its praises in various media (conferences, user groups, Web, etc.). If you do so, you need to expect equally fierce reactions when people realise your claims are unsubstantiated (or, at the very least, not as universal and problem-free as you originally portrayed).

Re: Goodbye, MongoDB

#13
post #8

There is no single way to control the memory usage using system tools except maintaining mongod instances on dedicated virtual machines without running further services. There are numerous complaints from people about this stupid architectural decision from various side and 10gen is doing nothing to change this brain-dead memory model. Can someone explain to me why this is actually a big issue? Except for really tiny…

Pretty much any sane architecture has machines dedicated to handling the data store (MySQL, Mongo or whatever). If you are scaling up from a single machine, this is the first split you make.

Re: Goodbye, MongoDB

#14
The biggest problem with mongoDB IMO is that BSON dictionaries are ordered. Let that sink in for a sec: the hash data structure must be ordered.... The solution most drivers run with is to just alphabetically order each dictionary.... a ineffcientcy I'm not really happy with.

Re: Goodbye, MongoDB

#15
post #5

Wow, how many "Goodbye, MongoDB" stories are coming? The last days had several ones. Not sure if this is already a trend?

Ppl seems to hate successful projects. Mongo is probably the most successful noSQL db out there (not going in a war on its merits and flaws) and now people hate it. I wonder how long will take for us to start reading stories on "Why I hate Riak"

Re: Goodbye, MongoDB

#16
post #6

While some of the author's criticisms are valid, some of them are completely wrong: > Having no option to perform an operation comparable to UPDATE table SET foo=bar WHERE.... What? db.collection.update does exactly this. See: http://www.mongodb.org/display/DOCS/Updating#Updating-update... MongoDB fit a nice niche for a read heavy mid-scalability db solution. Every DB has it's niche. Trying to use it outside of what…

Agreed. I found the mapreduce criticisms to be a little off:

> Now instead of fixing a bad implementation or fixing the underlaying architectural issues, MongoDB is moving to Hadoop.

I don't think that's accurate. They have a new "aggregation framework" coming that is meant to replace mapreduce. It could be a wrapper around hadoop, but I couldn't find anything documented about that. I completely agree that a blocking mapreduce is annoying, however, does any framework have a non-blocking mapreduce? I haven't tried many mapreduce implementations out, so this is a genuine question.

Re: Goodbye, MongoDB

#18
post #8

There is no single way to control the memory usage using system tools except maintaining mongod instances on dedicated virtual machines without running further services. There are numerous complaints from people about this stupid architectural decision from various side and 10gen is doing nothing to change this brain-dead memory model. Can someone explain to me why this is actually a big issue? Except for really tiny…

I was wondering the same. It's pretty standard for databases to not be very good about sharing with others, memory-wise. That's why having a dedicated server is such a popular best practice for non-puny applications. And MongoDB says it's not designed for puny applications right there in its name.

Re: Goodbye, MongoDB

#19
mmap files and sharding...

It seems like the problem is that you're not using MongoDB in a sharded setup to begin with. For good or bad, MongoDB targets the scale where you need sharded and replicated setups. In other words, a large enough operation to require multiple servers for data storage. If you need the opposite of that, which is multitenancy, MongoDB is not going to be a good fit.

On the other hand, MongoDB has always been sold as a rapid prototyping and easy to iterate datastore, which is attractive for people working on small projects. Then they have an "oh shit" moment when they run into operational issues.

Re: Goodbye, MongoDB

#20
post #6

While some of the author's criticisms are valid, some of them are completely wrong: > Having no option to perform an operation comparable to UPDATE table SET foo=bar WHERE.... What? db.collection.update does exactly this. See: http://www.mongodb.org/display/DOCS/Updating#Updating-update... MongoDB fit a nice niche for a read heavy mid-scalability db solution. Every DB has it's niche. Trying to use it outside of what…

Agreed. I found the mapreduce criticisms to be a little off: > Now instead of fixing a bad implementation or fixing the underlaying architectural issues, MongoDB is moving to Hadoop. I don't think that's accurate. They have a new "aggregation framework" coming that is meant to replace mapreduce. It could be a wrapper around hadoop, but I couldn't find anything documented about that. I completely agree that a blocking…

I don't believe RavenDB blocks. Instead, it returns the results along with a flag to indicate if any of the source data may have been modified while the operation was running.
Post reply on HN