Hacker News new | past | comments | ask | show | jobs | submit login

It can be a bit dangerous to group all NoSQL databases together as they differ from each other as much as they do from relational.

In some ways MongoDB sits in between relational databases and other NoSQL databases. While MongoDB doesn't have SQL transactions, it does have atomic operations similar to relational databases.

Normalization is an interesting term that really has been defined or redefined to fit into a relational mindset. Denormalized often implies unstructured mess, while that could be the case in any database (relational included). It is certainly not the norm for MongoDB.

In MongoDB a properly designed schema is very structured and 'normalized'. In truth these schemas don't mirror relation schemas, they could, but it would ignore beneficial additions the document model provides. It is very easy to use the same ERD diagram for both relational and MongoDB. What you will find in both is very structured accessible data. In MongoDB you will find that the ability to have a given fields value be an array or object permits your schema to more accurate map to your actual use of the data. The schema will be simpler as you no longer need things like many to many join tables.

Not to say that MongoDB is better than relational, just different. Sometimes MongoDB is a better fit, and sometimes relational is a better fit, just depends on the situation.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: