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 or data residency use cases. To learn more about directory buckets, see Working with directory buckets.
For more information about how directory buckets are different, see the following topics.
Differences for directory bucketsDirectory bucket names
A directory bucket name consists of a base name that you provide and a suffix that contains the ID of the AWS Zone (an Availability Zone or Local Zone) that your bucket is located in, followed by --x-s
. 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 deletes file1.txt
. If the dir1/
and dir2/
directories are empty and contain no other objects, Amazon S3 also deletes those directories.
ETags and checksums â Entity tags (ETags) for directory buckets are random alphanumeric strings unique to the object and not MD5 checksums. For more information about using additional checksums with directory buckets, 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 in DeleteObjects
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
and CopyObject
. 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 the s3express: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), the delete
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 the ListMultipartUploads
operation to list the in-progress multipart uploads in the bucket and use the AbortMultipartUpload
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.
The directory buckets support 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. For a list of supported API operations see Directory bucket API operations.
Amazon S3 features not supported by directory bucketsThe following Amazon S3 features are not supported by directory buckets:
AWS managed policies
AWS PrivateLink for S3
MD5 checksums
Multi-factor authentication (MFA) delete
S3 Object Lock
Requester Pays
S3 Access Grants
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
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4