In the previous post we discussed cloud storage for consumers. Probably a more common use case for cloud storage is to enable backups and/or extended storage from cloud servers and platforms. Over the past month, we have used our network of 25 global servers running in various public clouds to measure bandwidth throughput and latency to and from various cloud storage services including Microsoft's Azure Blob Storage, Amazon's Simple Storage Service (S3), SoftLayer's CloudLayer Storage, Nirvanix Storage Delivery Network, Rackspace Cloud Files, and Box.net. We conducted these bandwidth tests by reading and writing a 3MB test file (10MB for storage services in the same cloud such as EC2 to S3) to/from each storage services at random times twice daily. The results are separated by cloud server provider. The table displays all of the storage services tested within that cloud ordered by fastest downlink. We also tested storage in Microsoft's Azure platform.
The purpose of this test wasn't to measure the maximum throughput capacity between server and storage service, but rather to provide a comparison between different storage services. The 3MB test file is not sufficiently large for maximum capacity to be determined (for same cloud storage services the throughput will be more accurate because of the larger 10MB file size). Actual throughput for larger files will most likely be higher than the throughput calculations displayed here.
Bandwidth and storage pricing are other factors to consider when selecting a storage service. For example, Amazon does not charge for bandwidth to/from its S3 storage service and EC2 instances running in the same region. However, there are good reasons to use an external storage service for backups. If, for example, you use EC2 and store your backups using S3 in the same region, and that region happens to go down entirely for an extended period (an unlikely scenario of course), you will be without any means of recovering your data until the region is brought back online. For added fault tolerance, you may decide to keep backups in a separate Amazon S3 region (and pay the bandwidth costs) or even in a separate cloud like Microsoft's Azure.
Tests were performed using a small Azure instance.
Azure: South Central US (TX)
Azure: North Central US (IL)
Azure: Southeast Asia (Singapore)
Tests were performed using an m1.small instance in all regions.
EC2: US East Region
EC2: US West Region
EC2: EU West Region
Linode VPS Hosting
All instances are Linode 360s
Linode: Newark, NJ
Linode: Atlanta, GA
Linode: Dallas, TX
Rackspace Cloud Files is run out of Dallas as well. Linode also provides GigE uplinks with all servers. This explains the very high downlink throughput result
Linode: London, UK
Linode: Fremont, CA
Our VoxCLOUD servers are the smallest 2GB model
VoxCLOUD: New York
Most likely Microsoft Azure and Voxel run out of data centers in very close proximity
VoxCLOUD: Amsterdam, NL
GoGrid: CA, US
We run a 512MB instance with GoGrid.
Box.net tends to perform very well against US west coast servers.
Rackspace Cloud Servers: Dallas, TX
Our rackspace node is also run on a 512MB instance. Throughput to and from Rackspace's own Cloud Files storage service was very good.
Storm on Demand: MI, US
Terremark vCloud Express: Miami, FL
ReliaCloud: MN, US
RimuHosting: Dallas, TX
RimuHosting: Auckland, NZ
IBM SmartCloud: NY, US
Speedyrails: Quebec, Canada