Amazon S3 (stands for Simple Storage Services) is a simple web service interface that allows you to store object based data & retrieve it from anywhere and at any time. It is highly scalable, secure, durable (99.99999999999%), reliable, fast and inexpensive data storage.
Know the fundamentals:
- AWS S3 is object based storage which allows you to upload files, think of a drop-box (it actually uses AWS S3 service to store files), Facebook, Microsoft One Drive, Google Drive.
- Individual Amazon S3 objects can now range in size from 1 byte all the way to 5 terabytes (TB). The size can vary in future so stay tuned at https://aws.amazon.com/blogs/aws/
- Amazon recommends S3 customers to use Multipart upload for object files which are greater than 100MB of size.
- You can upload unlimited data using your individual AWS account and at the backend AWS monitors for the provisioning and scalability as and when required around all the regions in the world.
Files are stored in buckets which are nothing but a folder, you can put your files in the bucket or create as many buckets you want.
- Buckets names in S3 are universal and must be unique. You cannot create the same name if it is already used earlier. For example if I created a bucket called awsmum it creates a namespace as https://s3.ap-south-1.amazonaws.com/awsmum
- S3.ap-South-1 is the region
- awsmum is the bucket, you must use small character alphabet for the bucket name.
- The files would be uploaded & accessed using http secure service
- It is not used to install Operating systems or application databases.
S3 Data Consistency:
AWS S3 provides read-after-write consistency for PUTS of new object (e.g. a file 10MB file) in your bucket (which is a folder). When you upload word document you will be able to view the content immediately however if you try to modify and update the same word file then there will slightly delay in accessing the updated modified due to changes which are replicated across the storage facilities across AWS region. During this updating process the end users will be able to view the file which was originally uploaded or the updated modified file but what user will not see is the corrupted or partial data. For the detailed theory how it works you can refer to http://docs.aws.amazon.com/AmazonS3/latest/dev/Introduction.html .
AWS S3 Storage Classes – Standard / Infrequent Access / Reduced Redundancy / Glacier
S3 Standard:
- S3 Standard provides availability and durability which helps store data across multiple facilities and can sustain the loss of 2 facilities parallel.
S3 Infrequent Access (IA):
- S3 Standard also provides similar availability and durability like standard which helps store data across multiple facilities and can sustain the loss of 1 facilities only. It is much cheaper than S3 as the data is not frequently accessed and is only charged at the retrieval
Key features of Standard and Infrequent Access:
- Frequent accessing of data with highly available (99.99%) and redundant (99. 999999999%)
- Very low latency and high performance
- Backed with AWS S3 SLA for availability
- Supports encryption of data in transit and at rest
- Life cycle management for automatic migration of objects.
S3 Reduced Redundancy:
- Cheaper than standard and IA
- It provides availability (99.99%) & durability (99.99%)
- It is also backed with SLA and can sustain loss of data in a single facility
S3 Glacier:
- Very cheaper than Standard, IA & RR – 1 cent per GB per month
- Used for non-frequent data access & main purpose is for data archival
- Provides durability(99.999999999%) only
- Supports encryption of data in transit and at rest
- Vault lock feature enforces compliance via lockable policy
Below Table Summarize The above Storage Class Features.
S3 pricing is based on location of the AWS region and are charged for below:
- Storage – Data stored in AWS storage
- Request – Number of request made to S3 bucket
- Storage Management – you can tag and classify the object based on the tagging.
- Data Transfer – Data uploaded in S3 is free but data transfer in different region is charged.
- Transfer Acceleration – It enables fast, secure transfer of your files over long distance between end-user and S3 bucket with the help of cloud front service which is globally distributed.