SQL Server administration and T-SQL development, Web Programming with ASP.NET, HTML5 and Javascript, Windows Phone 8 app development, SAP Smartforms and ABAP Programming, Windows 7, Visual Studio and MS Office software
Development resources, articles, tutorials, code samples, tools and downloads for AWS Amazon Web Services, Redshift, AWS Lambda Functions, S3 Buckets, VPC, EC2, IAM

Databases and RDS Notes for AWS Cloud Practitioner Exam

In general, a database should be highly available, easy to scale and separate from application servers. For AWS Cloud Practitioner exam, we need to know comparison between database types like Relational SQL databases and NoSQL databases, managed and unmanaged database services on AWS, AWS RDS service and Amazon DynamoDB. Amazon RDS stands for Relational Database Services which is a managed relational SQL database service on AWS.

AWS Cloud Practitioner Certification Databases

Basically, when choosing a database for your applications, we consider following criteria:
Scalability: We should have an idea about the throughput requirements and the ability to scale up in future to answer this need.
Total Storage Requirement: We should know the size of the data that you will store; GB, TB or PB of data?
Object Size and Type: Are you going to store simple data structures of large data objects?
Durability: How much durability, availability and data recovery do you need? Is there regulation obligations?

Database Types
Relational Databases: For example SQL Server, Oracle, MySQL, etc.
Non-relational Databases: For example MongoDB, Casandra, Redis, etc.

SQL Relational Databases

In SQL relational databases, data is stored in rows and columns
A SQL database schema is fixed.
SQL databases scale vertically by increasing hardware capabilities

You can prefer using a SQL relational database in following conditions:
Strict schema rules are required,
In case of data quality enforcements,
No need for extreme read/write capacity and extreme database performance is required

NoSQL Databases

In NoSQL databases, data is stored in one of following storage models:
Key-Value pairs,
Documents, or

NoSQL schemas are dynamic
NoSQL databases scale horizontally by increasing number of servers

NoSQL databases should be preferred in case:
You have to scale your database horizontally,
Your database schema does not have strict rules,
Your application requires extreme read/write database performance

Comparison of Relational SQL and NoSQL Databases

Relational SQL Database NoSQL Database
Data Storage rows and columns key-value pairs, documents, graphs
Schemas fixed, strict rules dynamic
Scalibility vertical horizontal
Querying SQL based based on collection of documents

Unmanaged and Managed Databases

Besides running a database on-premises, you have the option of running your database on AWS as an unmanaged database installed on an EC2 instace or running as an RDS instance managed by AWS.
Here is a comparison. Blue tasks are managed by you and orange tasks are managed by AWS in each column.

On-premises Database Unmanaged Databaes on AWS EC2 AWS RDS Managed Database
Application optimization Application optimization Application optimization
Scaling Scaling Scaling
High availibility High availibility High availibility
Database backups Database backups Database backups
Database software patches Database software patches Database software patches
Database software installation Database software installation Database software installation
OS patches OS patches OS patches
OS installation OS installation OS installation
Server maintenance Server maintenance Server maintenance
Rack and stack Rack and stack Rack and stack
Power, HVAC, net Power, HVAC, net Power, HVAC, net

By using an AWS RDS database instance, most of the tasks are handled to AWS and users can focus on data models, SQL developments and query optimization

I hope this database notes will help for AWS users who want to pass AWS Cloud Practitioner Certification exam


Copyright © 2004 - 2021 Eralper YILMAZ. All rights reserved.