Simple storage service Flashcards
What is S3 and it’s advantages?
S3 manages data as objects rather than in file systems or data block.
You can upload any file type you can think of to S3 like photoes, videos, code, documents, text files etc. It cannot be used to run an operating system or database though.
- It provides secure, durable, highly scalable object storage.
- S3 allows you sto store and retrieve any amount of data from anywhere on the web at a very low cost.
- Amazon S3 is easy to use, with a simple web service interface
How much can S3 store and how does S3 store files?
- Unlimited storage
- The total volume of data and the number of objects you can store is unlimited. - Objects up to 5 TB in size
- S3 objects can range in size from a minimum of 0 bytes to a maximum of 5 terabytes. - S3 Buckets
- Stores files in buckets, which is very similar to folders on your computer.
Do your S3 have to be globally unique?
Yes, it has to be. All AWS accounts share the S3 namespace. Each S3 bucket name is globally unique.
Meaning you probably can’t name your S3 bucket for test_bucket since this is very likely already taken.
How is the S3 URLs structured?
Structure:
https://BUCKET-NAME.s3.REGION.amazonaws.com/KEY-NAME
example of an url:
https://acloudguru.s3.us-east-1.amazonaws.com/Ralphie.jpg
What HTTP code will you receive if an upload to S3 was succesfull?
200
When you upload a file to an S3 bucket, you will receive an HTTP 200 code if the upload was succesful.
S3 objects operates of what we call a key-value store. Which elements does this key-value store consist of?
- The key
- The name of the object (e.g. Ralphie.jpg) - Version ID
- Important for storing multiple versions of the same object - Value
- The data itself, which is made up of a sequence of bytes - Metadata
- Data about the data you are storing (e.g. content-type and last-modified)
S3 is a safe place to store files and facilitates availability and durability. How is this achived, and at what percentile is the service availability and durability?
The data is spread across multiple devices and facilities to ensure the availability and durability.
- Availability
- The service availability is 99.95% - 99.99% depending on the S3 tier - Durability
- Designed for 99.999999999% (9 decimals) durability for data stored in S3.
What is the use case for S3 standard and what does it include?
- High availability and durability
- Data is stored redundantly across multiple devices in at least 3 availability zones. - Designed for Frequent Access
- Perfect for frequently accessed data - Suitable for most workloads
- The default storage class.
- Use cases include websites, content distribution, mobile and gaming applications, adn big data analytics.
What is lifecycle management in S3?
You get to define rules to automatically transition object to a cheaper storage tier or delete objects that are no longer required after a set period of time.
What is versioning in S3?
With versioning, all versions of an object are stored and can be retrieved, including deleted objects.
What are the 3 different ways to secure the data in your S3 bucket?
- Server-side encryption
- You can set default encryption on a bucket to encrypt all new objects when they are stored in the bucket - Access control lists (ACLs)
- Define which AWS accounts or groups are granted accesss and the type of access. You can attach S3 ACLs to individual objects within a bucket. - Bucket policies
- S3 bucket policies specify what actions are allowed or deined. For instance allow user Alice to PUT but not DELETE objects in the bucket.
What does it mean that S3 has a strong read-after-write consistency?
- After a successful write of a new object (PUT request) or an overwrite of an existing object, any subsequent read request immediately received the latest version of the object.
- Strong consistency for list operations, so after a write, you can immediately perform a listing of the objects in a bucket with all changes reflected.
What are the main difference between Acess control list and Bucket policy when it comes to giving access to your S3 Objects?
- Object ACLs
- Object ACLs work on an individual object level. Meaning you control access level on specific individuals. - Bucket policy,
- Bucket policies work on an entire bucket level. Meaning that all users gets the exact same access levels to the bucket since the access is on the bucket and not the specific individual.
How do you make buckets public?
- Buckets are private by default: When you create an S3 bucket, it is private by default (including all objects within it). You have to allow public access on both the bucket and its objects in order to make the bucket public.
- Object ACLs: You can make individual objects public using object ACLs.
- Bucket policies: You can make entire buckets public using bucket policies.
How would you make an entire bucket public?
You would use a bucket policy, since that can make the whole bucket public, and you don’t have to make individual objects public.
Can S3 be used to host content?
Yes it can, but only static content (meaning it’s not hooked up to a database).
You could for instance host a webpage with movie trailers on S3.
What are some advantages of versioning?
- All versions of an object are stored in S3. This includes all writes and even if you delete an object.
- Can be a great backup tool.
- It cannot be disabled. Once enabled, versioning cannot be disabled, only suspended.
- Lifecycle rules, can be integrated with lifecycle rules.
- Support MFS. Can support multi-factor authentication so if people want change or delete stuff they need to authenticate twice.
How does deleting and restoring a S3 object work when versioning is enabled?
When versioning is enabled you can’t technically delete an object.
When you delete an object with versioning you just add a delete marker to your object, which makes it disappear.
if you want to restore the object, you can delete the delete marker which makes your object visible and accessible again.
if your S3 bucket is public are previous versions of objects in the bucket also public?
No, it’s not.
It’s only the current version of the objects that are publicly available.
What are the use case for S3 Standard-infrequent Access (S3 Standard-IA)
- You need rapid access
- Used for data that is accessed less frequently but requires rapid access when needed. - You pay to access the data
- There is a low per-GB storage price and a per-GB retrieval fee. - Use case
- Great for long-term storage, backups, and as a data store for disaster recovery files.
- Has 99.9% availability and 99.999999999% (11 9’s) durability.
What is S3 one zone-infrequent access, and it’s use cases?
Basically the same as S3 Standard-IA, but is stored redundantly within a single AZ.
- Costs 20% less than regular S3 Standard-IA
- Great for long-lived, infrequently accessed, non-critical data
- Has 99.5% availability and 99.999999999% (11 9’s) durability
What is S3 Intelligent-Tiering and its use cases?
1.Good if you don’t have a standard access pattern, and sometimes you access your data frequently and sometimes you do it infrequently.
- Automatically moves your data to the most cost-effective tier based on how frequently you access each object. This is done with machine learning.
- It optimizez cost and had a monthly fee of $0.0025 per 1,000 objects
- Has 99.99% availability and 99.999999999% (11 9’s) durability.
What are Glaciers and the 3 options?
Glacier is a storage class that is used for very infrequently accessed data.
- You pay each time you access your data.
- It’s used only for archiving data.
- It’s cheap storage
- Optimized for data that is very infrequently accessed.
- Has 99.99% availability and 99.9999999999% (11 9’s) durability
The different options are:
1. Glacier instant retrieval
2. Glacier Flexible retrieval
3. Glacier Deep archive
What is the use case for Glacier instant retrieval?
Provides long-term data archiving with instant retrieval time for you data.