Simple Storage Service – S3 |
||
– Object-Based Storage | ||
– Unlimited Storage | ||
– Not Suitable to install OS and/or Database | ||
Buckets |
Naming Convention |
Unique Name |
Scope |
Attached to Region | |
Access |
By Default – Not Public – Bucket Policies. – Access Control Lists |
|
Can create Access logs – Logs all the requests made to S3 bucket. | ||
Objects |
Consists |
– Key: Name of the Object – Value: Data (Made up of a sequence of bytes) – Version ID – Metadata: Data about data – Subresources |
Size |
0 bytes to 5TB | |
Multi-Part Upload |
If Object size is more than 5GB, then we need to use multi-part upload to save data into buckets. | |
Access |
By Default – Not Public | |
Metadata |
set of name-value pairs that describe the object. |
|
Keys |
Full Path of an object. | |
Data Consistency Model |
Read after Write Consistency |
PUTS of new objects |
Eventual Consistency |
overwrite PUTS & DELETES | |
S3 Storage Classes can be configured at the object level and a single bucket can contain objects stored across S3 Standard, S3 Intelligent-Tiering, S3 Standard-IA, and S3 One Zone-IA. You can also use S3 Lifecycle policies to automatically transition objects between storage classes without any application changes | ||
Storage Classes |
S3 Standard |
– Low Latency & High throughput. – Stored redundantly across multiple regions. |
S3 – Intelligent Tiering |
– Low Latency & High throughput. – Stored redundantly across multiple regions. – Optimizes costs by automatically moving data to the most cost-effective access tier, with outperformance impact or operational overhead. – Small monthly monitoring and auto-tiering fee. |
|
S3 – IA(Infrequent Access) |
– Low Latency & High throughput. – Stored redundantly across multiple regions. for data that is accessed less frequently, but requires rapid access when needed. – per GB retrieval fee. – Use cases: long-term storage, backups, and as a data store for disaster recovery files. |
|
S3 One Zone – IA |
– Low Latency & High throughput. – Infrequent Access Data. – Do not require multiple AZ. – Data Stored in a single AZ. – per GB retrieval fee. – Use cases: for storing secondary backup copies of on-premises data or easily re-creatable data. a lower-cost option for infrequently accessed data but do not require the availability and resilience of S3 Standard or S3 Standard-IA. |
|
S3 Glacier |
– Low-cost storage class for data archiving. – Retrieval time: a few minutes to hours. |
|
S3 Glacier Deep Archive |
– Lowest-cost storage class – Retrieval time: within 12hours – Use cases: – designed for customers — particularly those in highly-regulated industries, such as the Financial Services, Healthcare, and Public Sectors — that retain data sets for 7-10 years or longer to meet regulatory compliance requirements – an alternative to magnetic tape libraries. |
Encryption |
Encryption In Transit |
Can be Achieved by SSL/TLS (HTTPS) |
Encryption At Rest |
Server Side (Amazon): – S3 Managed Keys – SSE-S3 – AWS Key Management Service, Managed Keys – SSE-KMS – Server Side Encryption With Customer Provided Keys – SSE -C |
|
Client Side Encryption: – You manage/Do encryption and upload encrypted data to S3. |
||
Versioning |
– Stores all version of an object: – Including all writes and even if you delete an object. – Once Enabled, Versioning can be disabled, only suspended. – Integrates with Lifecycle rules. – MFA Delete: – Uses Multi-factor authentication, can be used to provide an additional layer of security. |
|
Life Cycle Management |
Lifecycle rules |
– To manage objects. – Automate Transition to tiered storage. – Expire your objects. – Default, after 425 days. |
Cross Region Replication |
– CRR requires versioning to be enabled on both the source and destination buckets. – Need to have a IAM Role. – Can change storage class for a replicated bucket. – Existing files(Before enabling CRR) will not be replicated to Destination automatically. However subsequently updated files will be replicated automatically. – Delete markers do not get replicated. – Deleting an object in source bucket do not delete the object in the destination bucket. |
S3 Transfer Acceleration |
– Uses Edge locations |