- Simple Storage Service
- Unlimited storage
- Pay as you use
- Read after write consistency for PUTS
- Eventual consistency for overwrite puts and deletes.
- Objects are stored in Buckets
- Bucket name is unique across the entire S3 service. You can’t create a bucket with a name that is already taken.
- Once created, the bucket name cannot be changed.
- Bucket is created in an AWS region – Bucket region cannot be changed.
- You can create up to 100 Buckets in your AWS account(Soft limit)
- Object size can be 0B to 5TB. Objects upto 5GB can be uploaded in single operation. Use multipart-upload to upload objects greater than 5GB in size.
- You can define Bucket Policies and Access Control Lists to control permissions on buckets and objects.
- Storage Classes
- Standard
- Intelligent-Tiering
- Infrequent Access
- One Zone
- Glacier
- Glacier Deep Archive
Storage Class | Durability | Availability | Number of Availability Zones | Retrieval Fee |
---|---|---|---|---|
Standard | 99.999999999% | 99.99% | >=3 | NO |
Intelligent-Tiering | 99.999999999% | 99.9% | >=3 | NO |
Infrequent Access | 99.999999999% | 99.9% | >=3 | YES |
One Zone | 99.999999999% | 99.5% | 1 | YES |
Glacier | 99.999999999% | 99.99% | >=3 | YES |
Glacier Deep Archive | 99.999999999% | 99.99% | >=3 | YES |
- Life Cycle Management – You can configure life cycle rules to
- Automatically transition objects from one storage class to another after a certain number of days.
- Automatically delete objects after a certain number of days.
- Supports Encryption. Objects can be encrypted either at server side or client side.
- Versioning – You can enable versioning to store old versions of objects. Once enabled, versioning cannot be disabled; you can only suspend it. Previous object versions remain in S3.
- Static Website Hosting – You can host a Static Website on S3 by uploading all contents to an S3 bucket and configuring the bucket for hosting.
- Cross Region Replication – Replicate objects between buckets in various regions to minimize latency.
- Transfer Acceleration – Uses Edge locations to quickly transfer files between S3 and client location.
- S3 Event Notifications – You can configure S3 to send notifications to Lambda, SQS, SNS for events such as object creation and deletion.
- Requester Pays Buckets – By default bucket owner pays for storage, retrieval requests and data transfer. By enabling requester pays option on a bucket – retrieval request charge and data transfer charge will be paid by the requester.
- Monitoring – S3 metrics are stored in Cloud Watch and Cloud Trail logs.