6 ms·
I'm continuously amazed when I hear about mongodb in use. Not over say postgres, I get that there are nosql advantages, but over literally any other nosql optio
by Jach 9y ago
I'm continuously amazed when I hear about mongodb in use. Not over say postgres, I get that there are nosql advantages, but over literally any other nosql option.
https://en.wikipedia.org/wiki/Poe%27s_law https://en.wikipedia.org/wiki/Poe%27s_law is the term you're looking for...
- bad_user 9y agoIn general NoSQL solutions are optimized for certain use-cases at the detriment of others. If you're looking for a general purpose database, then RDBMSs like PostgreSQL are your best bet. So that said, when comparing NoSQL solutions, ending up with an apples versus oranges comparison is almost inevitable.
- qaq 9y agoThe funny thing is PG will outperform most NoSQL solutions as NoSQL store for vast majority of use cases.
- bad_user 9y agoWell, I for one think PostgreSQL is overrated. The number one reason for why people want NoSQL is horizontal scaling and for that PostgreSQL is terrible, with all available solutions being hacks that don't work.
- fermuch 9y agoI second this. Mongo clusters are easy to manage, and the aggregation pipeline or MapReduce engines do wonders on a sharded cluster with tons of data. That's the selling point of mongo for me.
- nicholassmith 9y agoThat's interesting to me as I've been looking at Mongo aggregations for a solution to a problem but couldn't find any research on the performance of them.
- ComputerGuru 9y agoIt doesn't matter how easy to is to scale if it doesn't do it right. You can win all the internet points when it comes to speed and ease-of-use but it doesn't matter if it comes at the cost of data integrity.
- Diederich 9y ago> It doesn't matter how easy to is to scale if it doesn't do it right. I would refer you to an earlier comment: > In general NoSQL solutions are optimized for certain use-cases at the detriment of others Your definition of 'right' is absolutely not the only definition of 'right'. More to the point: there are a lot of problem spaces where the data integrity provided by MongoDB are more than sufficient.
- ComputerGuru 9y agoSorry, I meant "correct" and not "right," as the former is objective and the latter can be (though often isn't) subjective. MongoDB is not correct; in fact, it is provably incorrect. If your needs to don't require correctness, then by all means.
- orf 9y ago> with tons of data Define tons of data. I'll bet a beer that what you say can fit on a single postgres instance and even be small enough to run fine on a cheapish developer laptop.
- kod 9y agoCitus works just fine.
- qaq 9y agowhat % of people have workload beyond something that PG on i3.16xlarge can handle?
- hendzen 9y agopeople who don't want to get woken up if Amazon decides to terminate said i3.16xlarge...
- jlarocco 9y agoMissed the point completely...
- acdha 9y agoI think you should reconsider that dismissal: everyone needs n > 1 instances for reliability while increasingly few tasks require more {CPU,RAM,IOPs} than a single server can provide. That means that a growing percentage of problems will require clustering for reliability more than performance, and that favors the easiest to manage since in most cases every option will be fast enough.
- qaq 9y agoNot a fan of AWS or cloud in general but accepted that this the direction the world is going for now. The AWS instance type was purely for illustration purposes.
- KallDrexx 9y agoIt's also about locality of your data. Having a global infrastructure means 150-200ms minimum latency per query if you have a system in India or Singapore with a database server in a US data center region. That adds up quick.
- qaq 9y agoThat is orthogonal concern to what is being discussed if you run geo distributed Mongo cluster you will either have slow queries or will compromise on data integrity.
- hiram112 9y agoI don't disagree with you for teams who know which technology is right and which isn't, for their specific use cases. But more common than not, inexperienced devs are using Mongo and similar to store relational data, simply because they were sold the 'MEAN' stack and didn't realize that, while it's easy to get a quick prototype running, a year or two later you eventually need things like transactions and joins, and NoSQL is absolutely the wrong technology most of the time.
- qaq 9y agoPeople tend to copycat what Google and the like are doing without giving much thought to the fact that in many cases the solutions they adapt are simply due to the fact that they don't have an alternative and not because it's "better".
- pishpash 9y agoNoSQL is optimized for no solutions. You do all the optimizations yourself. Only then are you allowed to speak of "optimized for certain use cases at the detriment of others."
- hamandcheese 9y agoWhich NoSQL would you prefer over mongo?
- Jach 9y agoLiterally any other. I'm unaware of any alternative so unreliable. But I do think http://www.scylladb.com/ http://www.scylladb.com/ is great.
- qohen 9y agoLiterally any other. I'm unaware of any alternative so unreliable. There was a post on LinkedIn last year, "MongoDB: The Frankenstein Monster of NoSQL Databases"[0], by the CTO of SlamData, which I think produces an analytics package for MongoDB or the like. The piece is an interesting dive into why MongoDB is what it is (at least as of March 2016) -- and given his connection to MongoDB and its employees -- being a partner of theirs -- it's quite eye-opening (and I'm surprised with almost 200 comments in this thread that no one posted it previously): Much like Mary Shelly’s Frankenstein monster, MongoDB’s data access layer is sewn together from ragged pieces that don’t fit together. Pieces that were never designed to fit together. The result, depending on your point of view, is either an Enterprise-grade NoSQL database destined to supplant Oracle, or an unholy abomination of nature, deserving of an angry mob bearing torches and pitchforks. Let me dissect this creature so you can decide for yourself. [0] https://www.linkedin.com/pulse/mongodb-frankenstein-monster-nosql-databases-john-de-goes/ https://www.linkedin.com/pulse/mongodb-frankenstein-monster-...
- qohen 9y agoAnother post[0] by the same author complements the one I posted above -- this is more recent and is focused more on MongoDB's moves as a company, relating what he saw at MongoDB World 2017): You might expect a database company to announce improved scalability, reliability, or performance. Or perhaps announce some of the countless features that users have been requesting for years, which are collecting dust in MongoDB's ever-growing issue tracker. These are sane, logical expectations for a database company, so you'd be forgiven for being shocked at MongoDB's announcements that the company is investing massively into every product category except database technology. Yet, to those who know MongoDB's troubled history, these announcements come as no surprise. In fact, I even predicted the launch of Stitch just over a year ago, at the last MongoDB World. MongoDB didn't start as a database company, it's never acted like a database company, and in my opinion, it doesn't really have the DNA of a database company. If his assessment in this next snippet is correct, one wonders about those who invested in this IPO: MongoDB has no ecosystem. There are no analytics tools for MongoDB (except SlamData [N.B. this is the author's company] ), no backup software, no recovery software, no data integration software, no query optimization software, no data management software, nothing. Zilch. There's just MongoDB. In hindsight, this is an inevitable consequence of a company without database DNA trying to build and monetize a database. MongoDB couldn't figure out how to build an Oracle-sized empire on a database—partially, I'd argue, because they couldn't figure out how to build a database—yet they have to hit their sales quotas. If you can't sell the database at scale, you end up trying to build and sell an ecosystem around the database. Slowly, bit by bit, MongoDB went after their early partners, trying to put them all out of business to drive a few million here and there. The result is a "database company" that sells everything under the sun, including database management tools, data exploration tools, cloud hosting tools, cloud hosting services, and soon, BaaS (Bubble makes a return!) and BI software. Everything except, you know, a database. [0] https://www.linkedin.com/pulse/mongodb-world-2017-lonely-story-versus-john-de-goes/?lipi=urn%3Ali%3Apage%3Ad_flagship3_profile_view_base_post_details%3BxyFI7dznRbylU%2BWEyF1nPQ%3D%3D https://www.linkedin.com/pulse/mongodb-world-2017-lonely-sto...
- dplgk 9y agoI can say that CouchDB makes Mongo look like an absolute dreamboat.