I'd only consider NoSQL if you expect a very heavy load and one of these:<p><pre><code>   - You have live data that is changing very regularly
   - You have a large quantity of flat data (think column-oriented databases)
   - You don't need to index / find data and it is very flat 
     (perhaps simple files on disk will allow you to store more)
</code></pre>
Plus :<p>- You cannot possibly put off going NoSQL until you have further established yourself in the marketplace<p>For Gridspy, we have live data and I expect large quantities of pretty flat data. It makes sense to stream the data directly to the user via messaging rather than polling through a database. Plus, I plan to store large quantities of high resolution data in a specialised database or dumped to disk - it will be much smaller and simpler without the indexing information since I don't need to search it, only slice it.<p>See <a href="http://blog.gridspy.co.nz/2009/09/database-meet-realtime-data-logging.html" rel="nofollow">http://blog.gridspy.co.nz/2009/09/database-meet-realtime-dat...</a>