Differences for directory buckets
When using Amazon S3, you can choose the bucket type that best fits your application and
performance requirements. A directory bucket is a type of bucket that is best used for
low-latency use cases. You can create a directory bucketin a single Availability Zone to
store data.You can create up to 100 directory buckets in each of your AWS accounts, with no
limit on the number of objects that you can store in a bucket. Your bucket quota is applied
to each Region in your AWS account. If your application requires increasing this limit,
contact AWS Support. Directory buckets support the S3 Express One Zone storage class. The
S3 Express One Zone storage class is recommended if your application is performance sensitive and
benefits from single-digit millisecond PUT
and GET
latencies. To
learn more about the S3 Express One Zone storage class, see S3 Express One Zone.
For more information about how directory buckets are different, see the following topics.
Topics
Differences for directory buckets
-
Directory bucket names
-
A directory bucket name consists of a base name that you provide and a suffix that contains the ID of the Zone (Availability Zone) that your bucket is located in. Directory bucket names must use a specific format and follow the naming rules for directory buckets. For a list of rules and examples of directory bucket names, see Directory bucket naming rules.
-
-
ListObjectsV2
behavior-
For directory buckets,
ListObjectsV2
does not return objects in lexicographical (alphabetical) order. Additionally, prefixes must end in a delimiter and only "/" can be specified as the delimiter. -
For directory buckets,
ListObjectsV2
response includes the prefixes that are related only to in-progress multipart uploads.
-
-
Deletion behavior – When you delete an object in a directory bucket, Amazon S3 recursively deletes any empty directories in the object path. For example, if you delete the object key
dir1/dir2/file1.txt
, Amazon S3 deletesfile1.txt
. If thedir1/
anddir2/
directories are empty and contain no other objects, Amazon S3 also deletes those directories. -
ETags and checksums – Entity tags (ETags) for S3 Express One Zone are random alphanumeric strings unique to the object and not MD5 checksums. For more information about using additional checksums with S3 Express One Zone, see S3 additional checksum best practices.
-
Object keys in
DeleteObjects
requests-
Object keys in
DeleteObjects
requests must contain at least one non-white space character. Strings of all white space characters aren't supported inDeleteObjects
requests. -
Object keys in
DeleteObjects
requests cannot contain Unicode control characters, except for the newline (\n
), tab (\t
), and carriage return (\r
) characters.
-
-
Regional and Zonal endpoints – Bucket-management API operations for directory buckets are available through a Regional endpoint and are referred to as Regional endpoint API operations. Examples of Regional endpoint API operations are CreateBucket and DeleteBucket. After you create a directory bucket, you can use Zonal endpoint API operations to upload and manage the objects in your directory bucket. Zonal endpoint API operations are available through a Zonal endpoint. Examples of Zonal endpoint API operations are
PutObject
andCopyObject
. When using directory buckets, you must specify the Region in all requests. For Regional endpoints, you specify the Region, for example,s3express-control.us-west-2.amazonaws.com
. For Zonal endpoints, you specify both the Region and the Availability Zone, for example,s3express-usw2-az1.us-west-2.amazonaws.com
. For more information, see Regional and Zonal endpoints for directory buckets. -
Multipart uploads – You can upload and copy large objects that are stored in directory buckets by using the multipart upload process. However, the following are some differences when using the multipart upload process with objects stored in directory buckets. For more information, see Using multipart uploads with directory buckets.
-
The object creation date is the completion date of the multipart upload.
-
Multipart part numbers must use consecutive part numbers. If you try to complete a multipart upload request with nonconsecutive part numbers, Amazon S3 generates an HTTP
400 (Bad Request)
error. -
The initiator of a multipart upload can abort the multipart upload request only if they have been granted explicit allow access to
AbortMultipartUpload
through thes3express:CreateSession
permission. For more information, see Authorizing Regional endpoint API operations with IAM.
-
-
Emptying a directory bucket – The
s3 rm
command through the AWS Command Line Interface (CLI), thedelete
operation through Mountpoint, and the Empty bucket option button through the AWS Management Console are unable to delete in-progress multipart uploads in a directory bucket. To delete these in-progress multipart uploads, use theListMultipartUploads
operation to list the in-progress multipart uploads in the bucket and use theAbortMultipartUpload
operation to abort all the in-progress multipart uploads. AWS Local Zones – Local Zones are only supported for directory buckets not general purpose buckets.
-
Appending data to existing objects isn’t supported for directory buckets that reside in Local Zones. You can only append data to existing objects in directory buckets that reside in Availability Zones.
-
S3 Lifecycle isn't supported for directory buckets in Local Zones.
-
API operations supported for directory buckets
The Amazon S3 Express One Zone storage class supports both Regional (bucket level, or control plane) and Zonal (object level, or data plane) endpoint API operations. For more information, see Networking for directory buckets and Endpoints and gateway VPC endpoints.
Regional endpoint API operations
The following Regional endpoint API operations are supported for S3 Express One Zone:
Zonal endpoint API operations
The following Zonal endpoint API operations are supported for use with directory buckets:
Amazon S3 features not supported by directory buckets
The following Amazon S3 features are not supported by S3 Express One Zone:
-
AWS managed policies
-
AWS PrivateLink for S3
-
MD5 checksums
-
Multi-factor authentication (MFA) delete
-
S3 Object Lock
-
Requester Pays
-
S3 Access Grants
-
S3 Access Points
-
Bucket tags
-
Amazon CloudWatch request metrics
-
S3 Event Notifications
-
S3 Lifecycle transition actions
-
S3 Multi-Region Access Points
-
S3 Object Lambda Access Points
-
S3 Versioning
-
S3 Inventory
-
S3 Replication
-
Object tags
-
S3 Select
-
Server access logs
-
Static website hosting
-
S3 Storage Lens
-
S3 Storage Lens groups
-
S3 Transfer Acceleration
-
Dual-layer server-side encryption with AWS Key Management Service (AWS KMS) keys (DSSE-KMS)
-
Server-side encryption with customer-provided keys (SSE-C)
-
The option to copy an existing bucket's settings when creating a new bucket in the Amazon S3 console
-
Enhanced access denied (HTTP
403 Forbidden
) error messages