What is AWS Simple Storage Service(S3)?

AWS S3(simple storage service) is similar to Storage disks or External disks but it is web-based Cloud storage. It is an infrastructure, which is a service solution where we can store files. AWS S3 is working bucket concepts where we can add multiple buckets and upload files in buckets. But these files will be treated as Objects, not as files.

We can virtually store any kind of data in any format. We can upload/store unlimited data or number of objects. Individual Amazon S3 objects can range in term of size from a minimum of 0 bytes to a maximum of 5 terabytes. It means we can upload a file whose size can be 0 bytes to 5 terabytes. The largest object to be uploaded can be of 5 gigabytes. AWS S3 stores objects in key-value pair concept, it is like an associate array in terms of programming. It means whenever we upload objects, we need to provide a unique key to store that object. That key can be any string and later this key can be used to retrieve the data. AWS S3 also provides tagging feature to organize data or objects.

AWS S3 provides accessibility it means we can set the permission which object will be public or which will be private. Apart from this, we can set permissions to IAM users too:

Object permissions(Read, Write & Delete permission)

Bucket permissions(Read & Write Access control list for Bucket)

At the time of storing data, we can choose the Storage class as most frequently, less frequently or Encryption if we want to encrypt our objects.

AWS S3 is not only for storage we can also do things like:

Launching a static website: It means S3 bucket can also be treated as Web hosting. We need to upload HTML, CSS and JS files (if require) and launch a website by providing the root document. After that, the S3 bucket will provide you a URL to access.

Server Access Logging: If you want to track requests for access to your S3 buckets, means if you want to audit like who is accessing your S3 bucket or who is accessing bucket objects, then this feature will help you to track the requests. Server access log information can be useful for you in terms of security also.

Versioning: Versioning can be used to protect from unintended overwrites and deletions of your data. It means we can use versioning to preserve, retrieve, and restore every variant of the stored object in S3 bucket. With versioning, we can easily recover any version of an object.

Default Encryption: It provides a way to set the default encryption behavior for an S3 bucket. If it is enabled then objects will be encrypted using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS.

Apart from these properties, S3 provides Object-level logging which can be useful when we use AWS API to write object, get the object or delete the object by using inbuilt functions.

Amazon S3 is a scalable, high-speed, low-cost web-based service which is designed for online backup and archiving of data and application program.

In other words, AWS S3 is like a raid array of SSDs attached to a particular computer with incredible bandwidth and a storage system which is capable of large scaling with 99.999999999% reliability.

Check out the video to enable Server Access logging for an S3 bucket:

Please subscribe to get updates of interesting videos

If you are looking for information related to AWS S3, then please enroll in our free course: