Hacker News new | ask | show | jobs
by mattkrea 4447 days ago
What language are you writing your project(s) in?

If you are using Node you should use Mongoose and then you may see why some people love Mongo. Complex queries and joins (not technically called joins I guess) are incredibly easy to accomplish with that module[1]. Personally, I have migrated back to MySQL since I was unable to convince my colleagues that Mongo would last long-term and frankly I am not 100% confident either for the kind of business applications that we need[2].

[1]: http://mongoosejs.com/docs/populate.html

[2]: payment processing industry handling billions of records

2 comments

I used java, node and .net, this question it's because i love mongodb,I like mongodb and many of its features but I have not found a use for my projects and so far I'm only seeing mongodb for small projects or simple queries. I have not used mongoose because i do not like ORM, but I'll do some testing on it
I would strongly recommend it.

My experience with ORMs has not been pleasant either but Mongoose was very, very nice.

What would be your plan for ensuring referential integrity when working with MongoDB?
For me the ORM provided some comfort here but this is one of the concerns that caused me to revert to MySQL.

Essentially you end up with an a lot of linking by item IDs as you would with a traditional relational database but the "eventual consistency" was where I thought there may be issues in the future.

I personally never saw problems stemming from this but my projects using MongoDB never really even hit a million objects in a single collection (not 100% sure on that). Again, at scale is where I'd lose confidence.

This is entirely speculation but when it comes to critical infrastructure I can't leave anything to chance.