Inside a scenario having a database that contains 100s of countless rows and reaching dimensions of 500GB with maybe ~20 customers. Mostly it's data storage for aggregated data to become reported on later.
Would SQL Azure have the ability to handle this? If that's the case, will it seem sensible to go down that path? In comparison to buying and housing 2+ top end servers ($15k-$20k each) inside a co-location facility + all maintenance and backup copies.
Have you think about using the Azure Table storage? Azure Tables don't have referential integrity, but when you're simply storing many rows, is the fact that a choice for you personally? You could utilize SQL Azure for the transactional needs, and employ Azure Tables for individuals tables that don't easily fit in SQL Azure. Also, Azure Tables is going to be cheaper.
SQL Azure databases are restricted to 50Gb (right now)
As referred to within the General Recommendations and Restrictions
I'm not sure whether SQL Azure has the capacity to handle your scenario - 500GB appears a great deal and doesn't estimate the prices list (50GB max). I am just attempting to give perspective concerning the prices.
Official prices of SQL Azure is about 10$ a GB/month ( http://world wide web.microsoft.com/windowsazure/prices/)
Therefore, 500 GB could be around 5k $ every month roughly. 2 high-finish servers (without license costs, maintenance and backup copies) of 20k take 8 several weeks to repay.
Or, from some other perspective: Presuming you alter your servers every four years, does your budget of 240k $ (5k $ * 48 several weeks) cover the hardware, installation/configuration, licence costs and maintenance costs? (Not counting bandwidth and backup since you'll pay that extra too when utilizing SQL Azure).
One option is to make use of SQL Azure sharding. This can be a method to spread the information over multiple SQL Azure databases and it has the benefit that every database would make use of a different CPU &lifier hard disk (since each db is really saved on the different machine within the data center) that ought to provide you with great performance. Obviously, this really is underneath the assumption that the database has the potential of being sharded. There's more information on this sharding here.