Configuration to verify performance of S3 Transfer Acceleration
Here is an easy way to check the performance of S3 Transfer Acceleration.
S3 Transfer Acceleration is one of the options offered by S3, which allows users around the world to optimize the network performance when uploading and downloading data.
Amazon S3 Transfer Acceleration is a bucket-level feature that enables fast, easy, and secure transfers of files over long distances between your client and an S3 bucket. Transfer Acceleration takes advantage of the globally distributed edge locations in Amazon CloudFront. As the data arrives at an edge location, the data is routed to Amazon S3 over an optimized network path.
Configuring fast, secure file transfers using Amazon S3 Transfer Acceleration
In order to check the performance of S3 Transfer Acceleration, we will use the tool Amazon S3 Transfer Acceleration Speed Comparison for verification.
Environment
Create one S3 bucket.
Set S3 Transfer Acceleration to be enabled for this bucket.
CloudFormation template files
We will build the above configuration using CloudFormation.
Place the CloudFormation template at the following URL.
https://github.com/awstut-an-r/awstut-saa/tree/main/02/002
Template points
We will cover the key points of each template file to configure this environment.
Set Status of AccelerateConfiguration to Enabled
Define the resources around the S3 bucket in saa-02-002.yaml.
S3 Transfer Accelerationを有効化したバケットを作成します。
Resources:
Bucket:
Type: AWS::S3::Bucket
Properties:
BucketName: !Sub ${Prefix}-bucket
AccelerateConfiguration:
AccelerationStatus: Enabled
AccessControl: Private
Code language: YAML (yaml)
Configure the S3 Transfer Acceleration settings in the AccelerationConfiguration property. You can enable it by setting the AccelerationStatus property in the same property to “Enabled”. By default, this property is “Suspended”, which means it is disabled.
Architecting
We will use CloudFormation to build this environment and check its actual behavior.
Create CloudFormation stack and check resources in stack
Create a CloudFormation stack.
For information on how to create stacks and check each stack, please refer to the following page
As a result of executing the above command, we have confirmed that the name of the S3 bucket created this time is “saa-02-002-bucket”.
Next, we will check the S3 Transfer Acceleration setting status of the bucket.
You can see that the Status value is “Enabled”, indicating that it is successfully enabled.
Evaluate performance of S3 Transfer Acceleration with tool
Now that the bucket is ready, we will use the speed comparison tool to check the performance of S3 Transfer Acceleration.
To use the tool, follow the steps described in the AWS official website.
Copy the following URL into your browser window, replacing
region
with the AWS Region that you are using (for example,us-west-2
) andyourBucketName
with the name of the bucket that you want to evaluate:https://s3-accelerate-speedtest.s3-accelerate.amazonaws.com/en/accelerate-speed-comparsion.html?region=region&origBucketName=yourBucketName
Using the Amazon S3 Transfer Acceleration Speed Comparison tool
Create the URL according to the above. If we modify the “region” and “BucketName” to match our configuration, we will have the following URL.
https://s3-accelerate-speedtest.s3-accelerate.amazonaws.com/en/accelerate-speed-comparsion.html?region=ap-northeast-1&origBucketName=saa-02-002-bucket
After accessing the above page, the tool will start automatically.
As shown in the image, when the tool is run, it will start uploading data for testing from each region. The data upload is performed in such a way that the presence or absence of the S3 Transfer Acceleration setting can be compared.
From the results of the image, we can see that uploading from regions close to the Tokyo region (Tokyo and Seoul), where the S3 bucket is located, is less effective. Uploads from distant regions (Dublin and Frankfurt), on the other hand, are more effective, with up to a 2.5X improvement.
Summary
We have created an S3 bucket with S3 Transfer Acceleration enabled.
We also used an evaluation tool to verify the performance of S3 Transfer Acceleration in speeding up file transfers.
From the results of the verification, we confirmed that we can expect a speedup of about 2.5 times in regions far from the bucket.