4 ms·
"So in other words, they misused MongoDB and because of that are telling people not to use it? Wow. ... The problem here is that Diaspora chose MongoDB when it
by wmt 13y ago
"So in other words, they misused MongoDB and because of that are telling people not to use it? Wow. ... The problem here is that Diaspora chose MongoDB when it was very immature"
So the specific misuse of MongoDB was to use it? I guess that was also the point of the story.
- DigitalSea 13y agoYes, exactly. They chose the wrong tool for the job, that's not a fault with MongoDB. It's like eating a soup with a fork, you'll eventually eat the soup, but if you used a spoon in the first place there would never have been a problem. Is the company who made the soup to blame or are you to blame for not consuming it correctly? The problem with Diaspora was that it was a poorly executed good idea. Had they actually sat down and mapped out their requirements and chosen an appropriate database they would have realised that a traditional relationship was the right choice to make. Databases are hard, for a project as ambitious as Diaspora proper planning is key and evident by the issues that Diaspora had when it debuted (delete controller with no auth checking...) it's apparent they had no clue what they were doing not from just a database planning point-of-view but a code one as well. I would take whatever anyone who had anything to do with Diaspora had to say with a grain of salt. The real lesson here is to not get caught up in hype and trends. NoSQL isn't a magical solution that will make scaling problems disappear, traditional databases like MySQL have been battle-tested over a very long period of time. If MongoDB and <insert X NoSQL database here> were so great, the likes of Facebook and whatnot would use them on the scale Diaspora tried to use them on. People have to realise when Diaspora used MongoDB it was a very early version of the database. A lot has changed since Diaspora used it, it is suitable for a large-scale Facebook clone as the sole database? Definitely not, but using it for aspects like messaging and notifications I think would definitely be a good use case for it.
- wmt 13y agoIf MongoDB was the wrong tool because it was still too immature, i.e. broken, wasn't the problem not that they were eating soup with a fork, but with a broken spoon. But yes, they were wrong to use a broken tool for the job.