I have clients accessing Azure storage on a high latency connection, and it appears that the main reason for the slowness is the latency between each call.
The following happens several hundred times per user
Get flat directory listing Get the pages of the blobs that are listed Request the data in the pages The application is taking advantage of the "sparse" nature of the PageBlob, and the small allocation units of 512 bytes, but that has a side effect of creating too many transactions.
Can I batch together several "Get Page Range" or "Get Page Blob" requests for objects with different names, like this in the same HTTP request:
GET /containerName/Hourly/2012/01/01/02
GET /containerName/Hourly/2012/01/01/03
GET /containerName/Hourly/2012/01/01/04
GET /containerName/Hourly/2012/01/01/05
or the same question goes for similar operations with PUT