One of the most common questions customers ask is how does windows azure perform.
Well Microsoft published a series of benchmarks in an excellent web site called azurescope.
The thing is azurescope is going down on January 15th 2012 so I decided to publish these benchmarks here and make sure they will be available to the public.
Let us discuss tables read throughput.
This test measures the ability of Windows Azure Table Service to handle read requests from simultaneous clients.
- Throughput increases with the increase in number of concurrent clients (NumberOfWorkers * ThreadsPerWorker) and saturates at a maximum value. You may have to increase the ServicePointManager.DefaultConnectionLimit for multiple threads to establish more than 2 concurrent connections with the storage.
- CloudTableQuery sends multiple web requests with $top=100 option while using the Take clause if a value greater than 100 is passed as the argument. Consider using explicit DataServiceQuery and handle the continuation tokens if you want to send a lesser number of requests.
- Partitioning occasionally shows better throughput
- Bigger batch sizes generally provide better throughput.