Database Services in AWS
-
AWS Offers managed database services, you can aws console or cli to provision databases, AWS handles the installation fot he database software as well as backups & replication.
-
Three different managed AWS Database Services are Available
- Relational Database Services (RDS)
- Dynamo DB
- Redshift
-
Relational Databases:
- We store data in the form of tables which have relations Eg student, courses
- Data is stored in a table with rows called as records and columns called as attributes

- Querying data from relational databases is quick & organized with SQL language
- Eg: Oracle, SQL Server, mysql, maria db, postgreSQL, db2
-
no-SQL Databases:
- They are schemaless.
- They will have a restriction on only primary keys (like id)
- Eg: cassandra, mongodb etc…
-
Data Warehouse:
- Eg: Teradata, Informatica etc
Amazon Relational Database Service (RDS)
- RDS is Relational Databases as Service
- RDS supports following Database Engines
- MySQL
- MariaDB
- Oracle
- Microsoft SQL Server
- PostgreSQL
- Amazon Aurora (Compatible with MySQL & PostgreSQL)
- Instance Class:
- When you deploy RDS instance, you must choose vCPU, RAM, Network speed. For this AWS gives there instance classes
- Standard: Used for standard database requirements
- Between 2 & 96 vCPU
- 8-234 GB Memory (RAM)
- Memory Optimized: used for demanding Databases
- Between 4 & 128 vCPU
- 122 – 3904 GB memory (RAM)
- Burstable Performance: Basically for non-production databases
- Between 2 & 8 vCPU
- 1-32 GB memory (RAM)
- Standard: Used for standard database requirements
- When you deploy RDS instance, you must choose vCPU, RAM, Network speed. For this AWS gives there instance classes
- The above mentioned instance classes can be chosen as db instance size (db.t2.micro)
- Storage: RDS instance use EBS/instance store depending on db instance size.
- Handling load in databases: When there is need for a better performing database, we have two options
- Scaling Vertically: Change instance size (downtime)
- Scaling Horizontally: Add Replication
Creating a free db instance
-
Create a free rds instance by following screenshots using console

-
Create an rds instance which is mysql using aws cli
aws rds create-db-instance --db-instance-identifier 'qtfromcli' --db-instance-class 'db.t2.micro' --engine 'mysql' --master-username 'root' --master-user-password 'rootroot' --allocated-storage 20 --backup-retention-period 0
aws rds describe-db-instances

Lab setup for Next Sessions
- Ensure you have mysql workbench installed Refer Here
- Exercise: Delete the database from cli
