There are many people who recommend using MongoDB and then there a set of developers who say not to use it in production? Please help me list down the limitations of using MongoDB.
I think, you might have that a bit wrong. MongoDB is a wonderful library, even for production. However, you have to be careful when selecting your DB, because it has to fit your requirements. MongoDB is no universal solution and just because you throw MongoDB at a problem you will not instantly solve it!
MongoDB has the following limitations:
MongoDB is a NoSQL DB, which means you have to know how to use it and you need DB admins who are able to maintain it. This might lead to additional costs for you and your company.
MongoDB is not a relational DB, so you cannot write easy queries in order to select a specific data set from several tables (for example no JOINs)
NoSQL DBs are relatively new, so there are not that many established patterns which help you structure your DB efficiently. This issue might result in performance penalties.
MongoDB is very memory hungry. Your server will need a lot of RAM
dont forget the mvvc problems the read on write delay (wrong reference in memory) and the other sweet kinks that devs like to ignore to play with there new toys :D
Marco Alka
Software Engineer, Technical Consultant & Mentor
I think, you might have that a bit wrong. MongoDB is a wonderful library, even for production. However, you have to be careful when selecting your DB, because it has to fit your requirements. MongoDB is no universal solution and just because you throw MongoDB at a problem you will not instantly solve it!
MongoDB has the following limitations:
JOINs)You might find the following articles interesting: Valhalla and StackOverflow