Amazon S3 Concepts
External
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.
Object
An object is the fundamental entity stored in Amazon S3. Each object consists of data, a key, and metadata.
Data
The data portion of an object is opaque to Amazon S3.
Key
The object key and its version ID uniquely identify the object in a bucket, and the combination of a bucket, key and version ID uniquely identify globally each object stored in Amazon S3. Every object in a bucket has exactly one key.
Version ID
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.
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: