Amazon S3 Concepts
Internal
Overview
Amazon Simple Storage Service (S3) is an object storage service. It can be used to store and protect any amount of data for a range of use cases, such as websites, mobile applications, backup and restore, archive, enterprise applications, IoT devices and big data analytics. Amazon S3 is designed for 99.999999999% (11 9's) of durability. The S3 service can be integrated and exposed externally via the Amazon API Gateway.
The fundamental storage entity in S3 is the object. Objects are contained in buckets.
Objects
Each Amazon S3 object has data, a key, and metadata.
Key
The object key uniquely identifies the object in a bucket.
Metadata
The object metadata is a set of key/value pairs. After the object was uploaded, the object metadata cannot be modified. The only way to modify the metadata is to make a copy of the object and set the metadata.
Data
Bucket
The Amazon S3 data model is a flat structure: you create a bucket, and the bucket stores objects. There is no hierarchy of subbuckets or subfolders; however, you can infer logical hierarchy using key name prefixes and delimiters. The Amazon S3 console supports a concept of folders. The console uses the key name prefixes and the delimiter ('/') to present a folder structure.
Bucket ARN
arn:aws:s3:::bucket-name
Bucket Permissions
By default, all S3 buckets are private and can be accessed only by users that are explicitly granted access.
Bucket Public Access
Bucket Access Control List
Bucket Policy
Operations: