S3
Simple Storage Service(S3):-It is object level storage and It's designed to store and retrieve
any amount of data from anywhere on the internet.
Elastic FIle Sytem (EFS):-It is used for any file or data to share between three region.
Elastic Block Storage (EBS):- It is storage that is attached with an EC2 instance.
Glacier:- It is part of S3 and used for data backup and suppose in S3 data is not in use so in
that scenario you should keep data in Glacier.
Snowball:- It is portable storage and used for data migration suppose one company has huge
data and they need to move data on cloud so on that scenario use snowball
Block- It is drive storage and attached with an EC2 instance and data is there in the block so it
is identified by index number and it is accessed by instance.
Object:- It store the any data as it and It has unique id for object and it is access by internet
S3 Naming Rules | Simple Storage service
S3 Versioning | MFA Delete | S3 Copying Objects
### 1. What is Amazon S3?
**Answer**: Amazon Simple Storage Service (S3) is an object storage service that offers
industry-leading scalability, data availability, security, and performance. This means
customers of all sizes and industries can use it to store and protect any amount of data
for a range of use cases, such as websites, mobile applications, backup and restore,
archive, enterprise applications, IoT devices, and big data analytics.
### 2. What is an S3 bucket?
**Answer**: An S3 bucket is a container for storing objects in Amazon S3. Buckets
provide a way to organize the data stored in S3. Each bucket has a globally unique name
within AWS and can store an unlimited number of objects.
### 3. Explain S3 object and its components.
**Answer**: An S3 object consists of the following components:
- **Key**: The name of the object within the bucket.
- **Value**: The data itself, which is made up of a sequence of bytes.
- **Metadata**: A set of name-value pairs that describe the object, which can include
standard HTTP metadata (like Content-Type) and custom metadata.
- **Version ID**: An identifier for the specific version of the object (if versioning is
enabled on the bucket).
- **Access Control Information**: Permissions defining who can access the object and
what actions they can perform.
### 4. What are the different storage classes in S3?
**Answer**:
- **S3 Standard**: General-purpose storage for frequently accessed data.
- **S3 Intelligent-Tiering**: Automatically moves data to the most cost-effective access
tier based on changing access patterns.
- **S3 Standard-IA (Infrequent Access)**: For data that is accessed less frequently but
requires rapid access when needed.
- **S3 One Zone-IA**: Lower-cost option for infrequently accessed data that does not
require multiple Availability Zone resilience.
- **S3 Glacier**: For long-term archival at a low cost, with retrieval times from minutes to
hours.
- **S3 Glacier Deep Archive**: Lowest-cost storage for archiving data that is rarely
accessed, with retrieval times of up to 12 hours.
### 5. How do you secure data in S3?
**Answer**: Data in S3 can be secured using several methods:
- **Bucket Policies**: JSON-based policies to define access rules for the bucket and its
objects.
- **IAM Policies**: AWS Identity and Access Management (IAM) policies to control access
to S3 resources.
- **Access Control Lists (ACLs)**: Grant specific permissions on individual objects.
- **Server-Side Encryption (SSE)**: Encrypt data at rest using S3-managed keys (SSE-S3),
AWS Key Management Service (SSE-KMS), or customer-provided keys (SSE-C).
- **Client-Side Encryption**: Encrypt data client-side before uploading it to S3.
- **Bucket Versioning**: Keep multiple versions of an object to protect against accidental
deletion.
- **MFA Delete**: Add an extra layer of security by requiring multi-factor authentication
for deletion operations.
### 6. What is S3 Versioning?
**Answer**: S3 Versioning is a feature that allows you to keep multiple versions of an
object in a bucket. It protects against accidental deletions and overwrites by preserving,
retrieving, and restoring every version of every object stored in an S3 bucket. Once
versioning is enabled, any changes to objects will result in the creation of a new version
rather than overwriting or deleting the original.
### 7. What is S3 Transfer Acceleration?
**Answer**: S3 Transfer Acceleration enables fast, easy, and secure transfers of files over
long distances between your client and your S3 bucket. It leverages Amazon
CloudFront's globally distributed edge locations to accelerate the upload and download
of objects, potentially improving transfer speeds by up to 300% for long-distance
transfers.
### 8. How does S3 handle data consistency?
**Answer**: Amazon S3 provides strong read-after-write consistency for PUTS and
DELETES of objects in your S3 bucket in all AWS Regions. This means that after a
successful write of a new object or an overwrite of an existing object, any subsequent
read request will return the latest version of the object.
### 9. What are Pre-signed URLs in S3?
**Answer**: Pre-signed URLs allow you to grant temporary access to specific objects in
your S3 bucket without requiring AWS credentials. You can generate a pre-signed URL
for an object, specifying an expiration time. Anyone with the pre-signed URL can access
the object until the URL expires.
### 10. What is Cross-Region Replication (CRR) in S3?
**Answer**: Cross-Region Replication (CRR) is a feature that automatically replicates
objects in an S3 bucket from one AWS Region to another. This helps improve data
durability and availability, as well as meet compliance and disaster recovery
requirements.
### 11. What are S3 Lifecycle Policies?
**Answer**: S3 Lifecycle Policies allow you to define rules to automatically transition
objects between storage classes and delete objects after a specified period. This helps
manage storage costs by moving objects to less expensive storage classes or deleting
objects that are no longer needed.
### 12. What is S3 Select and how does it work?
**Answer**: S3 Select is a feature that enables you to retrieve a subset of data from an
object by using simple SQL expressions. Instead of retrieving the entire object, you can
use S3 Select to pull only the data you need, improving performance and reducing the
cost of data retrieval.
### Conclusion
These questions cover a wide range of topics related to AWS S3, including its basic
concepts, security features, storage classes, and additional functionalities.
Understanding these questions and answers will help you prepare for an interview
focused on AWS S3.