Thursday, 28 February 2019

AWS S3 : Deep Dive into Amazon Simple Storage Service

Amazon Web Services (AWS) have many offerings for low-cost data storage with high durability and availability. AWS avails storage choices for backup, archiving, and disaster recovery use cases and provides block, file, and object storage.

This blog will help you in clear understanding about the AWS S3 service, we have also mentioned some examples which you can use as references.

Amazon S3:
It is a simple storage service that provides software developers a highly-scalable, reliable, secure, efficient, and inexpensive data storage, where we can store and retrieve any amount of data, at any time, from anywhere on the web.

Following are ranges of storage classes in S3 designed for different use cases including the following:

  • Amazon S3 Standard - For general-purpose storage of frequently accessed data.
  • Amazon S3 Standard-Infrequent Access (Standard-IA) - For long-lived, but less frequently accessed data.
  • Amazon Glacier - For low-cost archival data.

We can categorize the S3 on basis of usage pattern as below:
 
A. Store and Distribute Static Content : 
Amazon S3 can be use to store and distribute static data-intensive content and media over the web. The content can be delivered/distributed directly from Amazon S3 because each object in Amazon S3 owns unique HTTP URL. Alternatively, Amazon S3 can serve as an origin store for a content delivery network (CDN), such as Amazon CloudFront for delivering the static media.

B. Hosting Static Website : 
  The elastic nature of Amazon S3 makes it particularly comfortable for hosting static website. Also S3 offers low-cost, highly availability, and solution with highly scalability, including storage for static HTML files, images, videos, and client-side scripts.
 
C. Analytics : 
Amazon S3 provides functionality as a data store for computation and large-scale analytics, such as transaction analysis for financial, clickstream analytics, and media transcoding. Horizontal scalability of Amazon S3 avails you to access your data from multiple computing nodes concurrently & seamlessly without being constrained by a single connection.
 
There are many more use cases where S3 can provide complete solution. Now we will see an demonstration of S3 where we will use S3 with Amazon Glacier to provide a scalable and secure solution for backup and archiving of cold data(earlier transaction logs, historical data etc)

In S3 service, AWS provides with Lifecycle rules which can be used to transmit the data from standard storage tier to any of the Infrequent access tier or glacier. For demonstration we can consider a use case where we have to store the web server logs of 6 months earlier which will not be required frequently. With below mentioned steps we can achieve the solution for the discussed use case.

1. Firstly create a S3 bucket where all logs of the web server will be stored.



2. Once your bucket is created, upload all the logs of the web server into the same using SDK or any relevant tool.

3. Once all data is uploaded over the bucket, you can set-up a lifecycle rule to transmit data to glacier with below shown steps.

A. Goto Management



B. Now you will see the tab for Lifecycle rule



C. Create rule Here we have took retention period of 6 months



D. In next step we will provide data transition rule which will transmit data into glacier after 180 days.



E. Now after transition rule we will provide expiration policy for the source data which will be present on S3 bucket once it is moved to Glacier.



F. Finally after all the above steps save the configuration.



Cloud.in Suggestions :
In the above article we have learned different usage of AWS S3 services, different storage tiers in S3. The example in this article can be adapted to store archival backup into Glacier using AWS S3 service which will help in optimizing the cost of storing the historical or archival data. There are many such use cases for S3 services which will be covered in some other article.

If you have any queries related to this article, then feel free to contact us at www.cloud.in

No comments:

Post a Comment

AWS CodeGuru Elevating Code Security

  Security and code quality are paramount in today’s fast-paced software development landscape. As the cornerstone of DevSecOps, Static Appl...