Module 5
# Learning objectives
* Summarize the basic concept of storage and databases.
* Describe the benefits of Amazon Elastic Block Store (Amazon EBS).
* Describe the benefits of Amazon Simple Storage Service (Amazon S3).
* Describe the benefits of Amazon Elastic File System (Amazon EFS).
* Summarize various storage solutions.
* Describe the benefits of Amazon Relational Database Service (Amazon RDS).
* Describe the benefits of Amazon DynamoDB.
* Summarize various database services.
## Instance stores and Amazon Elastic Block Store (Amazon EBS)
### Instance stores :-1:
**provides temporary block-level storage for an Amazon EC2 instance.**
> An instance store is disk storage that is physically attached to the host computer for an EC2 instance,
> An instance store is disk storage that is physically attached to the host computer for an EC2 instance, and therefore has the same lifespan as the instance. When the instance is terminated, you lose any data in the instance store.
### Amazon Elastic Block Store (Amazon EBS) :+1:
**is a service that provides block-level storage volumes that you can use with Amazon EC2 instances.**
> If you stop or terminate an Amazon EC2 instance, all the data on the attached EBS volume remains available.
> To create an EBS volume, you define the configuration (such as volume size and type) and provision it. After you create an EBS volume, it can attach to an Amazon EC2 instance.
> Because EBS volumes are for data that needs to persist, it’s important to back up the data. You can take incremental backups of EBS volumes by creating Amazon EBS snapshots.
#### EBS snapshot :-1:
**is an incremental backup. This means that the first backup taken of a volume copies all the data. For subsequent backups, only the blocks of data that have changed since the most recent snapshot are saved**
**Incremental backups are different from full backups, in which all the data in a storage volume copies each time a backup occurs. The full backup includes data that has not changed since the most recent backup.**
## object storage
**In object storage, each object consists of data, metadata, and a key.**
> The data might be an image, video, text document, or any other type of file. Metadata contains information about what the data is, how it is used, the object size, and so on. An object’s key is its unique identifier.
### Amazon Simple Storage Service (Amazon S3)
**s a service that provides object-level storage. Amazon S3 stores data as objects in buckets.**
#### Amazon S3 storage classes
##### 1. Amazon S3 STandard :100:
> * Designed for frequently accessed data
> * Stores data in a minimum of three Availability Zones
> Amazon S3 Standard provides high availability for objects. This makes it a good choice for a wide range of use cases, such as **websites, content distribution, and data analytics**. **Amazon S3 Standard has a higher cost than other storage classes** intended for infrequently accessed data and archival storage.
##### 2. Amazon S3 STandard-Infrequent Acess (s3 standard-IA) :100:
> * Ideal for infrequently accessed data
> * Similar to Amazon S3 Standard but has a lower storage price and higher retrieval price
> Amazon S3 Standard-IA is ideal for data infrequently accessed but requires high availability when needed.
> Both Amazon S3 Standard and Amazon S3 Standard-IA store data in a minimum of three Availability Zones
> Amazon S3 Standard-IA provides the same level of availability as Amazon S3 Standard but with a lower storage price and a higher retrieval price.
##### 3. Amazon S3 One zone Standard-Infrequent Acess (s3 One Zone standard-IA) :100:
> * Stores data in a single Availability Zone
> * Has a lower storage price than Amazon S3 Standard-IA
##### 4. Amazon S3 INterlligent-Tiering
> * Ideal for data with unknown or changing access patterns
> * Requires a small monthly monitoring and automation fee per object
> In the Amazon S3 Intelligent-Tiering storage class, Amazon S3 monitors objects’ access patterns. If you haven’t accessed an object for 30 consecutive days, Amazon S3 automatically moves it to the infrequent access tier, Amazon S3 Standard-IA. If you access an object in the infrequent access tier, Amazon S3 automatically moves it to the frequent access tier, Amazon S3 Standard.
##### 4. Amazon S3 Glacier Instant Retrieval
> * Works well for archived data that requires immediate access
> * Can retrieve objects within a few milliseconds
> When you decide between the options for archival storage, consider how quickly you must retrieve the archived objects. You can retrieve objects stored in the Amazon S3 Glacier Instant Retrieval storage class within milliseconds, with the same performance as Amazon S3 Standard.
##### 4. Amazon S3 Glacier Flexible Retrieval
> * Low-cost storage designed for data archiving
> * Able to retrieve objects within a few minutes to hours
> Amazon S3 Glacier Flexible Retrieval is a low-cost storage class that is ideal for data archiving. For example, you might use this storage class to store archived customer records or older photos and video files.
##### 4. Amazon S3 Glacier Deep Archive
> * Lowest-cost object storage class ideal for archiving
> * Able to retrieve objects within 12 hours
> Amazon S3 Deep Archive supports long-term retention and digital preservation for data that might be accessed once or twice in a year. This storage class is the lowest-cost storage in the AWS Cloud, with data retrieval from 12 to 48 hours. All objects from this storage class are replicated and stored across at least three geographically dispersed Availability Zones.
##### Amazon S3 Outposts :100:
> * Creates S3 buckets on Amazon S3 Outposts
> * Makes it easier to retrieve, store, and access data on AWS Outposts
> Amazon S3 Outposts delivers object storage to your on-premises AWS Outposts environment. Amazon S3 Outposts is designed to store data durably and redundantly across multiple devices and servers on your Outposts. It works well for workloads with local data residency requirements that must satisfy demanding performance needs by keeping data close to on-premises applications.
## Amazon Elastic File System (Amazon EFS) :100:
**In file storage, multiple clients (such as users, applications, servers, and so on) can access data that is stored in shared file folders. In this approach, a storage server uses block storage with a local file system to organize files. Clients access data through file paths.**
**Compared to block storage and object storage, file storage is ideal for use cases in which a large number of services and resources need to access the same data at the same time.**
**Amazon Elastic File System (Amazon EFS) is a scalable file system used with AWS Cloud services and on-premises resources. As you add and remove files, Amazon EFS grows and shrinks automatically. It can scale on demand to petabytes without disrupting applications.**
## Amazon Relational Database Service (Amazon RDS)
**is a service that enables you to run relational databases in the AWS Cloud.**
> Amazon RDS is a managed service that automates tasks such as hardware provisioning, database setup, patching, and backups
> With these capabilities, you can spend less time completing administrative tasks and more time using data to innovate your applications.
> ou can integrate Amazon RDS with other services to fulfill your business and operational needs, such as using AWS Lambda to query your database from a serverless
application.
> Amazon RDS provides a number of different security options. Many Amazon RDS database engines offer encryption at rest (protecting data while it is stored) and encryption in transit (protecting data while it is being sent and received).
## Amazon RDS Database engines
**Amazon RDS is available on six database engines, which optimize for memory, performance, or input/output (I/O).**
## Amazon Aurora
**is an enterprise-class relational database. It is compatible with MySQL and PostgreSQL relational databases. It is up to five times faster than standard MySQL databases and up to three times faster than standard PostgreSQL databases.**
> Amazon Aurora helps to reduce your database costs by reducing unnecessary input/output (I/O) operations, while ensuring that your database resources remain reliable and available.
> Consider Amazon Aurora if your workloads require high availability. It replicates six copies of your data across three Availability Zones and continuously backs up your data to Amazon S3.
## Amazon DynamoDB
**is a key-value database service. It delivers single-digit millisecond performance at any scale.**
### features of DynamoDB:
#### 1. Serverless
#### 1. Automatic Scaling
> AS the size of your database shrinks or grows , DynomeDB automatically scales to adjust for changes in capacity while manintaining consistent performance
> This makes it a suitable choice for use cases that require high performance while scaling
### Amazon Redshift
**is a data warehousing service that you can use for big data analytics. It offers the ability to collect data from many sources and helps you to understand relationships and trends across your data.**
## AWS Database Migration Service (AWS DMS)
**enables you to migrate relational databases, nonrelational databases, and other types of data stores.**
> With AWS DMS, you move data between a source database and a target database. [The source and target databases](https://docs.aws.amazon.com/dms/index.html) can be of the same type or different types. During the migration, your source database remains operational, reducing downtime for any applications that rely on the database.
## Additional database services
#### Amazon DocumentDB :100:
`is a document database service that supports MongoDB workloads. (MongoDB is a document database program.)`
#### Amazon Neptune is a graph database service.
`You can use Amazon Neptune to build and run applications that work with highly connected datasets, such as recommendation engines, fraud detection, and knowledge graphs.`
#### Amazon Quantum Ledger Database (Amazon QLDB) is a ledger database service.
`You can use Amazon QLDB to review a complete history of all the changes that have been made to your application data.`
#### Amazon Managed Blockchain is a service that you can use to create and manage blockchain networks with open-source frameworks.
`Blockchain is a distributed ledger system that lets multiple parties run transactions and share data without a central authority.`
#### Amazon ElastiCache is a service that adds caching layers on top of your databases to help improve the read times of common requests.
#### Amazon DynamoDB Accelerator (DAX) is an in-memory cache for DynamoDB.
`It helps improve response times from single-digit milliseconds to microseconds.`