Professional Documents
Culture Documents
PERFORMANCE REPORT
OVERVIEW
A frequently asked question regarding the Amazon Web Services (AWS) cloud computing
platform is how well their storage system (S3) performs with their computing platform (EC2).
As an FTP service that runs entirely within the AWS cloud, HostedFTP.com has, based on our
internal performance data, created this report to discuss the performance you can expect
when storing and retrieving files between an EC2 instance and S3.
We will also be reporting on how the AWS infrastructure performs over time. Each month we
will publish updates to the data to give you an insider’s view on how well AWS scales as they
continue to add capacity and customers.
With a linear performance model in mind we need to determine two values: the fixed cost
and the variable cost. The variable cost will be related to the size of the file being stored or
retrieved, the fixed cost can be thought of as an overhead or transaction cost.
1
Amazon S3 and EC2 Performance Report Presented By HostedFTP.com - February 2009
AMAZON S3 & EC2
PERFORMANCE REPORT
ANALYSIS
Our analysis focuses on the data presented in Appendix A and B
This chart shows that the fixed cost when storing a file is around 140 ms and the variable
cost is between 10 and 12 MB/s.
CONCLUSION
From our analysis we can conclude the following:
1. The variable cost when storing and retrieving files is between 10 and 12 MB/s
2. The fixed cost when storing a file is roughly 140 ms and negligible when retrieving a file
As we move forward we will keep an eye on how these two values change.
ABOUT HOSTEDFTP.COM
HostedFTP.com is your hosted FTP service that runs 100% within the cloud infrastructure of
AWS. Designed for use with both web browsers and FTP clients, HostedFTP.com improves
your network security and saves your business money.
For more information please visit our website www.hostedftp.com
2
Amazon S3 and EC2 Performance Report Presented By HostedFTP.com - February 2009
AMAZON S3 & EC2
PERFORMANCE REPORT
METHODOLOGY
We tracked the number of milliseconds (ms) it takes to store and retrieve files from S3 using
large EC2 instances in the us-east-1a availability zone.We used the JetS3t Java Library to
handle the actual storing and retrieving of files which in turn uses the Commons HttpClient
Library.
We started the timer at the point when the file is being stored or retrieved to S3.
We included 50,000 total data points (stores and retrieves) in our analysis, drawn randomly
from the month of February. These data points cover all days of the week and hours of the day.
To track the time it takes to store and retrieve a file we use the Java System.currentTimeMillis()
function. From the documentation on this function:
Note that while the unit of time of the return value is a millisecond, the granularity of the value
depends on the underlying operating system and may be larger. For example, many operating
systems measure time in units of tens of milliseconds.
Since we have a large number of data points at small file sizes this should have a very limited
impact on our results.
Our times do not include failed attempts to store or retrieve a file from S3.
3
Amazon S3 and EC2 Performance Report Presented By HostedFTP.com - February 2009
AMAZON S3 & EC2
PERFORMANCE REPORT
APPENDIX A
STORING A FILE
4
Amazon S3 and EC2 Performance Report Presented By HostedFTP.com - February 2009
AMAZON S3 & EC2
PERFORMANCE REPORT
APPENDIX B
RETRIEVING A FILE
5
Amazon S3 and EC2 Performance Report Presented By HostedFTP.com - February 2009