Amazon S3 is an object storage service on the cloud with unparalleled industry-leading scalability, data availability, security and performance. It is one of the legacy services launched in 2006. It is designed for 99.999999999% durability and 99.99% availability which translates to only 43 minutes of downtime every month. Object-based storage is an architecture that manages unstructured data in the form of object blobs along with metadata as opposed to other storage architectures like file-systems which treats data as a file hierarchy ( used in Operating Systems ) and block storage which manages data as blocks within sectors and tracks ( used in physical storage devices like Hard Disk, DVD etc.., )
The basic storage unit of S3 is a bucket having a unique user-assigned key called bucket-name. Files or objects can be stored within these buckets. Buckets and its content can be managed by the GUI ( AWS console ) or programmatically via language-specific SDK or Amazon S3 REST Endpoints. Each file in the S3 bucket can be up to 5 Terabytes in size with up to 2 Kilobytes of metadata. Files larger than 5 Terabytes can be stored as multi-part files. But the logic of breaking down while storing n S3 and consolidating the file parts after they are retrieved from S3 needs to be handled by the consumer.
Bucket policies provide centralized, access control to buckets. The bucket access is given in two ways namely Bucket Policy and Bucket Control list. In Bucket Policy, the user can give customized access to particular user, account and business hours. Access control lists (ACL) can only add (grant) permissions on individual objects and policies.
Each bucket and object in Amazon S3 have an ACL that defines its access control policy. The user can give 100 grants per ACL after that the user can adopt the Bucket Policy. Entire buckets can be made public or individual objects inside the bucket can be made accessible to necessary recipients.
- All the website contents will be uploaded to a S3 bucket and this bucket need to be made public, so it is exposed as a static website to users across the world.
- In order to use our custom domain, we need to configure using Route 53 and connect it to the S3 bucket to serve static content behind our custom domain.
- Dropbox is a billion-dollar company which offers cloud storage, file synchronization, personal cloud and client software. It is built on top of Amazon S3 for its storage capabilities.
- Netflix delivers millions of hours of quality content to its end-users with durable S3 service backing its storage necessities.
- Tumblr, Pinterest host their images on S3.