Before we start with AWS databases we understand the basics of the database.
A database is an organized collection of information. it makes data management easy. You can organize data into tables, rows, columns, and indexes to find relevant information. The main purpose of the database is to operate a large amount of information by storing, retrieving, and managing data.
Here we will discuss the Relational Database and Non-Relational Database.
A relational database is one that stores data in tables. The relationship between each data and searching through those relationships is relatively easy. The relationship between tables and field type is called a schema. for a relational database, the schema must be clearly defined.
Or, we can simply say that Relational Databases show the relationship between tables is related to each other. In this database, each field is filled, you can not leave an empty field. It is best suitable for OLTP (Online Transaction Processing).
Amazon RDS(Relational Database Service)
Amazon RDS is the “managed” relational database service offered as a web service by amazon. it makes it easy to set-up and operate a relational database in the cloud. It provides a very cost-effective way to use the industry’s leading RDBMS software as a managed service. because of this web service from amazon AWS, you do not have to buy any server or install any database software in it. you just subscribe to the was RDS web service and start using it. It can do various automated tasks, such as doing security patches, backups, etc.
AWS fully Managed RDS Service Where AWS is Responsible for
Automated Backups
Automated backups are enabled by default. The backup data is store in an S3 bucket. Backups are taken within a defined window. During the backup window, storage I/O may be suspended while your data is being backed up and you may experience elevated latency.
Database Snapshots: DB snapshots are done manually. They are stored even after you delete the original RDS instance.
Multi-AZ in RDS
Multi-AZ allows you to have an exact copy of your production database in another availability zone. AWS handles the replication for you, so when your production database is written, this will automatically be synchronized to the standby database.
Read Replicas
Read replicas allow you to have a read-only copy of your production database. this is achieved by using asynchronous replication from the primary RDS instance to the read replica. you use read replicas primarily for every read-heavy database workload. Read replica is used for scaling not for data recovery. you can have up to 5 read replica copy of any database. You can have a read replica in a second region.
There are basically two license option for RDS
Amazon RDS uses EBS volumes (not instance store) for DB and log storage.
You can create up to 40DB instances per account.
There are 2 methods to Backup and restore your RDS DB instance
More Information for backup and restore RDS DB
You can not encrypt an existing unencrypted DB instance.but you can do that you need to:
Redshift(OLAP)
Amazon Redshift is a fast and powerful, fully managed data where house service in the cloud. Datastore analysis and this data can be store in compressed formate. In redshift datastore on the node. when you hit a query for data then parallel processing run.
*Redshift always attempts to maintain at least 3 copies of your data.
*By default retention period is 1 day but you can change this retention period max. 35 days.
Redshift Availability
Currently available in 1 AZ but you can restore snapshots to new AZ in the event of an outage.
Aurora
Amazon Aurora is a MySql and Postgre SQL-compatible relational database engine that combines the speed and availability of high-end commercial databases with the simplicity and cost-effectiveness of an open-source database. amazon aurora is serverless.
2 copies of your data are contained in each availability zone, with a minimum of 3 availability zones. means 6 copies of your data.
Three Types of aurora replicas are available:
Backups with Aurora
It is a database that does not follow the relational database model provided by the relational database management system. In non-relational database data table not show the relation with other database table and no need to provide each column value here. It is mainly used for reading data type applications e.g., gaming.
NoSQL databases are widely recognized for their ease of development, functionality, and performance at scale.
DynamoDB
Amazon DynamoDB is a fast and flexible NoSQL database service for all applications that need consistent, single-digit millisecond latency at any scale. it is a fully managed database and supports both document and key-value data models. it is a flexible data model and reliable performance makes it a great fit for mobile, web, gaming, etc. data stored on SSD storage.
Features
Dynamo DB limits