I'm making a web app with NodeJS that has to deal with big data and many ralated data, I have choosen MongoDB as a big data DB but I'm still searching for a rich and powerful ODM that helps me query my data effeciently and keeps me on the right way.
What I found by googling:
Currently using mongoose at work, not a great fan of it, the documentation isn't up to the mark, seriously, it isn't, I'm not sure if I'm the only one struggling with mongoose documentation.
Anyway I would recommend Iridium, Great documentation, and easy to use.
Mongoose is great! One thing to know about it: when you query, use .lean() for better performance (gets the results "raw"), but when you create / update data, drop .lean() ๐
Check out DeriveJS , a DRY ODM for MongoDB, with a lean type-less syntax for defining models, that leverages Javascript Proxies - to let you create new data object instances and manipulate their properties, as though they are "native" JS objects, while taking care of all data persistence transparently in the background (you don't need to explicitly call .save() or .update() methods for data persistence), while running bulk operations requests (minimizing DB requests and increasing performance) in fixed (settable per collection) intervals.
Disclosure: I'm its developer.
Sandeep Panda
co-founder, Hashnode
I will vote for Mongoose! We use it for Hashnode and works pretty well for us.