Understand Buckets

Let’s get a better understanding of one of the most important components of S3—buckets.

We'll cover the following


Buckets are virtual containers where objects are stored in S3.

The good thing about an S3 bucket is that it’s infinitely large in size, so we don’t need to allocate a predetermined size while creating it. We can store as much data as we want. An S3 bucket never runs out of space.

All objects/data reside inside a bucket that can easily be managed by multiple operations provided by S3. These operations include upload, download, copy, delete, and so on.

S3 follows a flat, nonhierarchical structure, which means there are no folders or directories in S3. A folder structure can be imitated using prefixes and delimiters to organize multiple objects inside a bucket. We talk more about this in the coming lessons.

Important points on buckets

  • Although a maximum of 100 buckets can be created in an AWS account, this number can be increased by placing a limit increase request on AWS. However, there’s no limit on the amount of data that can be stored inside a bucket.
  • Each S3 bucket name is globally unique in the whole AWS infrastructure, so it must be DNS compliant. This means the bucket name must follow the standard DNS naming rules.
  • A bucket’s name can’t be edited after its creation.
  • Buckets can only store objects, so they can’t be nested inside other buckets.
  • Buckets are always created in the selected AWS region.
  • S3 buckets don’t support cross-account transfer. This means an S3 bucket can’t be transferred to other AWS accounts.