I've got an app fully working with PostgreSql. After reading about Mongodb, I was interested to see how the app would work with it. After a few weeks, I migrated the whole system to Mongodb.
I like a few things with Mongodb. However, I found certain queries I was doing in PostgreSql, I couldn't do efficiently in Mongodb. Especially, when I had to join several tables to calculate some logic. For example, this.
Moreover, I am using Ruby on Rails 3, and an ODM called Mongoid. Mongoid is still in beta release. Documentation was good, but again, at times I found the ODM to be very limiting compared to what Active Record offered with traditional (SQL) database systems.
Even to this date, I feel more comfortable working with PostgreSql than Mongodb. Only because I can join tables and do anything with the data.
I've made two types of backups. One with PostgreSql and the other with Mongodb. Some say, some apps are more suitable with one or the other type of db. Should I continue with Mongodb and eventually hope for its RoR ODM (Mongoid) to fully mature, or should I consider using PostgreSql?
A few more questions: 1) Which one would be more suitable for developing a social networking site similar to Facebook. 2) Which one would be more suitable for 4-page standard layout type of website (Home, Products, About, Contact)