S3 Flashcards
What is a bucket?
A bucket is a container of objects uploaded to S3.
What are some rules that bucket names must follow?
- A name must be unique across all the existing bucket names in Amazon S3.
- Must comply with DNS naming conventions.
- They cannot be ip addresses
- Must not contain underscore and uppercase letters
- Can start only with a lowercase letter or a number
What is the default access of buckets?
Buckets are private by default.
What are folders on Amazon S3?
Folders are saved as objects. Next to the specified name a forward slash “/” is appended and the object is displayed as a folder in the S3 console.
What is the maximum size of a file?
The maximum size of a file is 5TB.
What is the maximum file transfer size for a single PUT?
5 GB
What content type is used for files larger than 100 MB?
Multipart
What is Amazon S3?
Amazon S3 is a simple key-based object store. Only files (objects) can be stored on S3.
It’s a simple storage service that offers an extremely durable, highly available, and infinitely scalable data storage infrastructure at very low costs.
How do you communicate with Amazon S3?
Amazon S3 provides a simple, standards-based REST web services interface that is designed to work with any Internet-development toolkit.
What is the maximum storage capacity?
There is unlimited storage available.
What is the characteristic of updates to an object on S3?
Updates to objects on S3 are atomic. When reading an object you either get the old object or the new one. You will never get a partial, corrupted object.
What about event notifications?
Event notifications for specific actions, can send alerts or trigger actions. Notifications can be sent to:
- SNS Topics.
- SQS Queue.
- Lambda functions.
What is S3 data made up of?
S3 data is made up of:
- key (name)
- value (data)
- version id
What do you use to manipulate objects?
In order to manipulate objects (upload, download, delete, etc.) a REST API over HTTP is used.
S3 is accessible via a public endpoint of the form:
http://s3.aws-region.amazonaws.com/bucket (path style url)
or it can be also
http://bucket.s3.aws-region.amazonaws.com (virtual hosted style url)
What are the states of a backet with regard to versioning?
- unversioned (default)
- versioning enabled
- versioning-suspended
What happens after versioning has been enabled?
Versioning can be only suspended on a bucket, a bucket cannot be unversioned anymore.
What do you need to know in order to delete a particular version of an object?
You need to know its version id.
What is the version id of an object that has been added to a bucket before versioning was enabled?
In this case the version id is null.
What happens to an existing object if you deactivate bucket versioning and you update it?
The version id becomes null, and that version becomes the latest version.
The previous versions do not get deleted, and thereon all the changes are applied against this version.
What does Server Access Login provide?
Server Access Login provides detailed records for the requests that are made to a bucket (source bucket)
What is Server Access Logging used for?
It’s used for security purposes and auditing
What is Server Access Loging default state?
Server Access Login default state is disabled by default.
What happens when you enable Server Access Login?
When you enable it you will have to select a bucket where the logs will be delivered to (a target bucket) which can be the same as the source target. Source and target bucket should be in the same region.
If source and target bucket are the same you can select a different prefix to identify the logs.
Write permission should be granted to Amazon S3 Log Delivery Group on the target bucket.
What is the content of a Server Access Logging record?
A log record contains:
- the name of the bucket which was accessed (source bucket)
- the requester
- the request time
- the request action
- the request status
- the error code (if any)
What is one of the possible ways to dump logs?
Logs of multiple source buckets can be dumped in a single target bucket
When are logs delivered?
Server access logs are delivered on a best effort basis.
Most records are delivered within a few hours from the time they were recorded but timeliness of server logging is not guaranted.
What is the main difference between Server Access Logging and Object Level Logging?
Server Access Logging is performed at the bucket level while object level logging is executed at the object level.
What happens if object-level logging is activated and a user on application tries to access an object?
If a Cloud Trail is set up for the S3 bucket Data Event, the logs will be created in the target bucket.