What I have learned about RDS on AWS

This is the sixth post of content for preparing yourself for becoming an AWS Solutions Architect Associate.

In this post, we are going to focus on RDS and Databases on AWS.

As I have done previously let’s look at the similarities and differences to the closest equivalent in Azure. There are a number of relational and non-relational database platforms on AWS. This is the same with Azure. As I go through this section, I will point out some of the similar platforms.

Relational Databases (RDS)

RDS types in AWS:

Key features:

RDS runs on virtual machines that you do not have access to remotely manage. Amazon patches the RDS OS and database. It is NOT serverless, though Aurora is considered serverless.

Automated backups between 1-35 days for retention period. Enabled by default and stored in S3. No charge for storage equal to the size of the database. Restore point in time of the most recent backup. Restores a new RDS instance and different endpoint.

Database snapshots

Encryption uses AWS Key Management Service (KMS).

Non-relational databases

DynamoDB - No SQL, non-relational database. single digit millisecond latency. Mobile, web, gaming, ad-tech, IoT use cases. Similar to CosmosDB in Azure.

Advanced DynamoDB

Database Migration Service (DMS) Facilitates a migration from a source database to a target database. DMS can migration on-premises to on-premises, on-premise to AWS, AWS DB service to another AWS DB service. DynamoDB cannot be a source database but can be a target.

Data Warehousing

Redshift - Amazon’s Data Warehouse, business intelligent and data warehousing. Petabyte scale. $.25 per hour up to $1,000 per TB per year. Fraction of the cost of an on-premises Data Warehouse.

Aurora - Amazon’s RDS. MySQL and PostreSQL compatible RDS. Combines speed and availability. Architected to compete with Managed SQL Database, Azure SQL Database and Oracle. More open source to decrease licensing costs. 10 GB and auto-scales to 64 TB. Two copies in each Availablity Zones in a miniumum of three AZs, making six copies replicated and data blocks are continuously scanned and repaired, similar to how Geo-replicated storage works within Azure Storage. Up to 15 read replicas for maximum performance in-region with automated fail-over.

Amazon Aurora Serverless

On-demand, autoscaling configuration of Amazon Aurora. Clusters automatically start up, shut down, and scale capacity based on application needs. Helpful for infrequent, intermittent, or unpredictable workloads. Only pay when someone accesses the websites. Works well as a backend to Lambda.

Elasticache - open source, in memory caching engines. Deploy, operate, and scale for common web queries to increase performance and take the load off of the databases. Speed up existing databases when there are frequent identical queries. Not disk-based databases.

Database Migration Service

Cloud service to migration relational, data warehouses, and no-SQL databases.

AWS Schema conversion tool (SCT) can create some or all of the target tables, indexes, views, triggers, etc. These can also be created manually before using the migration tool.

Homogenous migrations - ex: Oracle to Oracle, or SQL to SQL. SCT is not needed.

Heterogenous migrations - SQL to Aurora - will need the SCT.

EC2 instance runs the DMS and SCT, if necessary.

Caching capabilities within AWS (balance of providing information that is up-to-date and providing low latency):

Amazon EMR (Elastic Map Reduce)

Petabyte scale data analysis. Solution for big data within AWS - Apache Spark, Hive, HBase, Flink, Hudi, and Presto. Three times the speed of typical Apache Spark on-premises.

Core nodes communicate with each other. Log data is lost if the Master node is lost or deleted. Can move log data and archive log data of master node to S3. Default is 5-minute intervals and must be done at the time that you setup the cluster.

I hope that you are enjoying this information so far. It is helping me to continue to comprehend these services as I prepare for the exam myself. Thank you very much.

Reference links:

What I’ve Learned about IAM on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/03/20/aws-iam

What I’ve Learned about S3 on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/03/20/aws-s3

What I’ve Learned about EC2 on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/03/22/aws-ec2

What I’ve Learned about EBS on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/03/22/aws-ebs

What I’ve Learned about Cloudwatch on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/03/22/aws-cloudwatch

What I’ve Learned about RDS on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/03/22/aws-rds

What I’ve Learned about Route 53 on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/04/01/aws-dns

What I’ve Learned about VPC on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/04/01/aws-vpc

What I’ve Learned about High Availability on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/05/01/aws-ha

What I’ve Learned about Applications on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/05/02/aws-apps

What I’ve Learned about Security on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/05/03/aws-security

What I’ve Learned about Lambda and serverless on AWS

https://captainhyperscaler.github.io/amazon-web-services/2022/05/04/aws-serverless