EDIT: I edited the question and separated the "MongoDB: Replicate data in documents vs. "join"" part into this topic on https://softwareengineering.stackexchange.com/
I have already played a bit with the mongoDB aggregation framework building some dummy queries and seeing the potential of the pipelining, the sub-documents structures in order to avoid the traditional SQL JOINs and so on.
Also, I've already read about when to use a document-oriented data base, checked out some MongoDB production deployments and use cases examples, and realized that the Oracle nested tables isn't a real alternative in terms of performance vs MongoDB.
I've also checked out the Diaspora MongoDB use case, in which they explains about the recursive data problem, an evidence that the graph data bases would fit better for that kind of scenarios:
Finally, and in order to structure all of these information in my used-to-be-normalized-head, I want to know what do you think about the following conclusions:
- If you have recursive data (like in the Diaspora example), you should go with graph databases like neo4j.
- Replicate data in each document vs. "join" example: Question separated into this one.
Thanks!