AWS Certification: S3 Storage Essentials and Concepts Cheat Sheet
- Last Updated On: November 21, 2017
- By: Scriptcrunch Editorial
Introduction
Amazon s3 is a highly available and durable object storage which can store virtually any type of data. (Images, Videos, text documents, backups and so on). It is a global service, however, you can get the region-specific endpoint for faster access.
Terminologies:
- Bucket: A logical separation to store data. A bucket should have a unique name as it has a universal namespace. Each bucket can be accessed globally using a unique URL.
- Object: Each data stored is called an object. Can be accessed via unique URL globally.
Key Points
- Pure Object storage
- Each file can range between 1 b to 5 TB.
- Allows unlimited storage.
- Files are stored in buckets.
- It is a key value store. (key: name, value: data)
- Each object has a version ID.
- Each object has a metadata associated with it.
- AWS provides 99.99% availability and 99.999999999 % of durability.
- Provides Life Cycle management for objects.
- Provides versioning of objects.
- Provides encryption of objects.
- Provides security using ACL’s and Bucket policies.
- Amazon S3 Transfer Acceleration feature can be used to accelerate the speed of object creation and retrieval. In this scenario, you will be charged only if there is a performance improvement.
Object Consistency:
S3 objects have the following consistency model.
- Read after write consistency for PUTS for new objects
- Eventual consistency for overwrite PUTS and DELETES (Takes a while to propagate)
S3 URL’s:
Supports the following two type of URL’s.
- virtual-hosted–style URL: It has the following structure. http://bucket.s3-aws-region.amazonaws.com.
- Path Style: It has the following structure. http://s3-aws-region.amazonaws.com/bucket
S3 Storage Types and Classes
- s3 standard: 99.99% availability and 99.999999999 % of durability .
- can withstand 2 Availability zone failures.
- Optimal for very frequent data access and storage
- supports SSL in transit and rest
- S3 Infrequent Access: This is for data which need very less accessed data but needs rapid access. Also, Comes with 99.9% availability and 99.999999999 % durability.
- Cheaper than s3 standard.
- Comes with a data retrieval charge.
- This is suitable for a disaster recovery storage option.
- supports SSL in transit and rest
- Reduced Redundancy Storage: Gives 99.99% availability and 99.99% durability.
- This type is for the data you can afford to loose. Basically non-critical data.
- supports SSL in transit and rest
- Glacier: This is an archival storage.
- To retrieve data from glacier it takes 3 -5 hrs after the request.
Here is the comparison Table
S3 Object Versioning:
Object versioning is supported by S3.
- You can version the object you upload to s3 for to prevent accidental deletion.
- Every time you update the object a new versioned object will be added to your bucket increasing the space as there is no mechanism for deduplication or incremental backup. So it is necessary to think in terms of cost you are opting for versioning.
- Once you enable versioning, you cannot disable it. You can only suspend it.
- Can be integrated with Life Cycle Rules for purging unwanted data.
- MFA can be used in conjunction with versioning for providing extra security.
Cross Region Replication
To maintain high availability of your object, you can enable the cross region replication of bucket. The only catch here is, if you enabling this of an existing bucket with objects, it will not replication the already existing objects. It will only replicate the new objects being uploaded to the bucket.
To enable cross region replication, your source and destination buckets shoould be versioned.
S3 Life Cycle Management
you can set lifecycle policies to you s3 data to move to infrequent storage and then to the glacier for archival. Also, you can mention the deletion time.
- The minimum days for moving standard data to infrequent access is 30 days and 128kb data.
- However, you can move to glacier from standard in 1 day using lifecycle policies.
- You cannot move objects to RR storage class using policies.
s3 Transfer Acceleration
This feature enables faster s3 object uploads using the CloudFront edge locations. If you enable this feature, you will get a distinct URL for uploading data to S3. You will be charged extra for this feature only if there is an improvement in transfer as compared to the normal upload.
Following are the use cases for s3 transfer acceleration.
- If your user base is across the world and they all upload data to one centralized bucket.
- If you are transferring terabytes of data across continents.
S3 Security
By default a new S3 bucket is private. You can secure your bucket objects using the following.
- Bucket policies
- Access control lists.
- You can enable detailed access logs which you can store in a different bucket.
Encryption:
There are two types of encryption,
- In Transit – using SSL/TSL.
- At rest: There are four types
- Service Side Encryption: – It has the following three types.
- S3 managed Keys (SSE-s3)In this, each object is encrypted using a key, and the keys are again encrypted using a master key. The master key is regularly rotated. Encryption used is AES 256
- AWS key management Service (SSE-KMS): – Here the customers custom key is used as the master key for encryption using the AWS key management service.
- Customer-Provided Keys (SSE-C):– In this case, the customer has to set the encryption key. AWS will use this key for encrypting and decrypting the data.
- Client Side Encryption:- In this case, you encrypt the data using any encryption scheme and then upload it to s3.
- Service Side Encryption: – It has the following three types.
S3 Pricing:
S3 is charged on the following basis.
- Storage
- Request
- Data Transfer.
Scriptcrunch Editorial
Other Interesting Blogs
[80% OFF] Linux Foundation Coupon for November 2024
Hi Techies, I wanted to let you know about a pretty sweet deal with the Linux Foundation Coupon that is running now.
[40% OFF] Linux Foundation LFCA, LFCS & LFCT Exam Voucher Codes
Linux Foundation has announced up to a $284 discount on its Linux certification programs Linux Foundation Certified IT Associate (LFCA) and Linux
CKA Certification Study Guide (Certified Kubernetes Administrator)
This comprehensive CKA certification exam study guide covers all the important aspects of the Certified Kubernetes Administrator exam and useful resources. Passing