Nice, succinct tips, Manuel! When it comes to MongoDB Document Structure: Data that will be accessed together should be stored together. This means (as you've stated) that as it relates to embedding - do it where possible - but look at your application's read/write profile to inform these decisions.
My biggest fear with document databases is that someday someone from the management will ask me for a report on the embedded fields, and I'll be screwed scanning all of them. The management, of course, can't be told that I'm using a document database and so such a report is not practical. This is the only scenario that keeps me from trying document databases. Is this fear rational? Do indexes solve this problem?
Hi, sorry for answering so late. Right indexing improve so much the performance. And you have the "aggregation framework" that is so powerful for complex queries. If you have a concrete doubt, let me know it.
No, no concrete doubts. Also, since I last posted my comment, I've come to peace with the idea that document databases are different, and have their own strengths and weaknesses, just like any other types of databases. :-)
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.