DEV Community

Cover image for S3 Fundamentals
Yogita Sharma
Yogita Sharma

Posted on

S3 Fundamentals

What is S3?
Storage for the internet designed to make web-scale computing easier, simple web services interface used to store and retrieve any amount of data at any time and from anywhere on the web.

Key benefits of S3:

Creating buckets:
Create and name a bucket that stores data. Buckets are the fundamental containers in S3 for data storage.

Storing data:
Store an infinite amount of data in a bucket, upload unlimited objects into an S3 bucket where each object can contain up to 5TB of data and each object is stored and retrieved using a unique developer assigned key.

Downloading data:
Download your data anytime you like or enable others to do the same through bucket policies and other security mechanisms.

Permissions:
Grant or deny access to others who want to upload or download data into you S3 bucket, authenticate mechanisms keep data secure from unauthorized access.

Standard Interface:
Use standard based REST and SOAP interfaces.

Image description

Key terminologies of S3:

Buckets:

Containers for objects stored in S3.
Every object must be contained in a bucket.

Purpose of S3 buckets:

  • Organize the S3 namespace at the highest level.
  • Identity responsible account for storage and data transfer charges.
  • Play a role in access control.
  • Serve as the unit of aggregation for usage reporting.
  • Configure buckets so that they are created in a specific region
  • Can configure a bucket so that every time an object is added to it, S3 generates a unique version ID and assigns that id to the object.

Objects:

  • Fundamental entitles stored in S3
  • They can be pdf files, text files, mp3 files, spreadsheets, or any kind of files.
  • They consists of object data and metadata where the object data is not visible to S3
  • Metadata is a set of name-value pairs that describe the object.
  • Metadata includes some default metadata such as the data last modified and standard HTTP metadata such as a content type. At the time the object is stored can also specify custom metadata. Object is uniquely identified within a bucket by a key and a version ID.

Keys:

  • Unique identifier for an object within a bucket, every object has exactly one key.
  • Combination of a bucket, key and version ID uniquely identify each object.
  • Every object in S3 can be uniquely addressed through the combination of the web service endpoint, bucket name, key and optionally a version.

Regions:

  • We can choose the geographical region where S3 will store the buckets that you create.
  • Choose a region to optimize latency, minimize cost, and/or address regulatory requirements.
  • Objects stored in a region never leave the region unless explicitly transfer them to another region.
  • You can only access S3 and its features in regions that are enabled for your accounts.

Top comments (0)