S3 Flashcards
Which S3 Storage Class is the most cost-effective for archiving data with no retrieval time requirement?
a) Amazon Glacier
b) Amazon Glacier Deep Dive
c) Amazon S3 Standard-Infrequent Access
d) Amazon S3 Intelligent Tiering
b) Amazon Glacier Deep Dive
Amazon Glacier Deep Archive is the most cost-effective option if you want to archive data and do not have a retrieval time requirement. You can retrieve data in 12 or 48 hours.
What hybrid AWS service is used to allow on-premises servers to seamlessly use the AWS Cloud at the storage layer?
a) Elastic Block Store
b) Snowball
c) S3
d) Storage Gateway
d) Storage Gateway
AWS Storage Gateway is a hybrid cloud storage service that gives you on-premises access to virtually unlimited cloud storage.
Which of the following services is a petabyte-scale data moving service (as a fleet) in or out of AWS with computing capabilities?
a) Snowball
b) Snowball Edge
c) Snowmobile
b) Snowball Edge
Snowball Edge is best-suited to move petabytes of data and offers computing capabilities. Be careful, it’s recommended to use a fleet of Snowballs to move less than 10PBs of data. Over this quantity, it’s better-suited to use Snowmobile.
Which of the following is an exabytes-scale data moving service in or out of AWS?
a) Snowball
b) Snowball Edge
c) Snowmobile
c) Snowmobile
Snowmobile is used to move exabytes of data in or out of AWS (1 EB=1,000 PBs=1,000,000 TBs).
What are Objects NOT composed of?
a) Key
b) Value
c) Access Keys
d) Metadata
c) Access Keys
Access Keys are used to sign programmatic requests to the AWS CLI or AWS API.
Where are objects stored in Amazon S3?
a) Folders
b) Buckets
c) Files
d) Bin
b) Buckets
Buckets store objects in Amazon S3.
What can you use to define actions to move S3 objects between different storage classes?
a) Scaling policy
b) Bucket Policies
c) Lifecycle rules
d) Replication
c) Lifecycle rules
Lifecycle Rules can be used to define when S3 objects should be transitioned to another storage class or when objects should be deleted after some time.
Which S3 Storage Class is suitable for less frequently accessed data, but with rapid access when needed, while keeping high durability and allowing an Availability Zone failure?
a) Amazon S3 Standard - General Purpose
b) Amazon Glacier
c) Amazon S3 One Zone-Infrequent Access
d) Amazon S3 Standard-Infrequent Access
d) Amazon S3 Standard-Infrequent Access
Amazon S3 Standard-Infrequent Access allows you to store infrequently accessed data, with rapid access when needed, has high durability, and is stored in several Availability Zones to avoid data loss in case of a disaster. It can be used to store data for disaster recovery, backups, etc.
Mention some use cases for AWS S3
- Backup and storage
- Disaster recovery
- Archive
- Hybrid Cloud Storage
- Application Hosting
- Media Hosting
- Data lakes and big data analytics
- Software delivery
- Static websites
What are the objects in AWS S3?
Objects are the files stored in an S3 bucket.
Objects have a key which is the full path for example:
s3://my-bucket/file.txt -> file.txt is the key
They key can also be composed by a prefix and the object name:
s3://my-bucket/folder1/folder2/file.txt where the prefix is folder1/folder2
There is no such concept of “directories” in AWS S3, just keys with very long names that contain slashes “/”
What is a multi-part upload?
The max object size is 5 TB, when there is a need to upload an object bigger that this size, multi-part upload has to be used, which means to split the object in multiple parts.
What are the elements of an Object?
- Key
- Value
- Metadata (list of key/value pairs - system or user data)
- Tags (unicode key/value pair up to 10) - useful for security / lifecycle
- Version ID (if versioning is enabled)
Mention the available ways to secure an S3 bucket
User based:
- security with IAM policies
Resource based:
- bucket policies, which are rules attached directly to the S3 bucket to allow or deny requests comming from other accounts or other requests
- Object Access Control Lists (ACL)
- Bucket Access Control Lists (ACL) - less common
NOTE: an IAM principal can access an S3 bucket if the user IAM permissions allow it OR the resource policy ALLOW it, AND there’s no explicit DENY
Encryption:
- Encrypt objects in Amazon S3 using encryption keys
What bucket policies define?
They are JSON based policies that define:
- Resources: buckets or objects
- Action: Set of API to Allow or Deny
- Effect: Allow or Deny
- Principal: The account or user to apply the policy to
For what we would use an S3 bucket policy?
We would use it to:
- Grant public access to the bucket
- Force objects to be encrypted at upload
- Grant access to another account (Cross account)