Every concept will require to learn new thinking. Your question is to general for a specific
answer.
You will structure and work with CouchDB documents in another way as with MongoDB documents. In CouchDB you will do queries with MapReduce. In MongoDB you have a flexible query interface similar to a RDBMS.
A Key-Value store requires a completely new way of thinking. You have to know your query patterns before you are able to structure your content the right way. You have no index, so you have to build your own structure.
One blog that gives a lot of NoSql information is http://nosql.mypopescu.com
Update
The Riak people have some interresting questions too:
- Will my access pattern be read-heavy, write-heavy, or balanced?
- Which datasets churn the most? Which ones require more sophisticated conflict resolution?
- How will I find this particular type of data? Which method is most efficient?
- How independent/interrelated is this type of data with this other type of data? Do they belong together?
- How much will I need to do online queries on this data? How quickly do I need them to return results?