Cloud Databases

Why a cloud database?

Why not just setup a database on an EC2 instance and call it a day?

RDS

Relational Databases like MySQL, PostgreSQL, and SQL Server are by far the most popular and flexible databases you can use. Just normalize your data, add a few indexes, and then write some select statement. Other databases are usually have some sort of benefit for specific use cases, but relational databases are a great general purpose database.

RDS is amazon's managed relational database service but what does that mean?

Here is a relational database comparison of responsibilities table taken straight from AWS

FeatureOn-premises managementAmazon EC2 managementAmazon RDS management
Application optimizationCustomerCustomerCustomer
ScalingCustomerCustomerAWS
High availabilityCustomerCustomerAWS
Database backupsCustomerCustomerAWS
Database software patchingCustomerCustomerAWS
Database software installCustomerCustomerAWS
Operating system (OS) patchingCustomerCustomerAWS
OS installationCustomerCustomerAWS
Server maintenanceCustomerAWSAWS
Hardware lifecycleCustomerAWSAWS
Power, network, and coolingCustomerAWSAWS

This is a list of some of the things you're responsible for when you're working with a database. The key takeaway here is that a database service takes on most of the responsibility for you.

I would suggest reading the What is Amazon Relational Database Service (Amazon RDS)? for more in depth information about all of this.

AWS Database Services

There are many other database services available in AWS that we're not going to cover in this course. But they're still worth knowing about.

databases-services

Service NameDatabase TypeDescriptionUse Cases
Amazon RDSRelationalManaged relational database service supporting multiple engines (MySQL, PostgreSQL, MariaDB, Oracle, SQL Server)Traditional applications, ERP, CRM, e-commerce
Amazon AuroraRelationalHigh-performance managed relational database compatible with MySQL and PostgreSQLHigh-throughput applications, SaaS products, gaming applications
Amazon DynamoDBNoSQL (Key-value and Document)Fully managed, serverless, key-value NoSQL databaseMobile, web, gaming, ad-tech, IoT applications
Amazon DocumentDBNoSQL (Document)MongoDB-compatible document database serviceContent management, catalogs, user profiles
Amazon ElastiCacheIn-memoryFully managed in-memory caching service (Redis, Memcached)Real-time applications, caching, session stores
Amazon NeptuneGraphFully managed graph database serviceSocial networking, recommendation engines, fraud detection
Amazon TimestreamTime SeriesFully managed time series databaseIoT applications, DevOps, industrial telemetry
Amazon QLDBLedgerFully managed ledger databaseFinancial transactions, supply chain, cryptocurrency
Amazon KeyspacesNoSQL (Wide Column)Apache Cassandra-compatible wide column databaseHigh-scale industrial apps, time-series data
Amazon MemoryDB for RedisIn-memoryRedis-compatible, durable, in-memory databaseMicroservices, real-time analytics, caching
Amazon RedshiftData WarehouseFully managed, petabyte-scale data warehouseBusiness intelligence, big data analytics
Amazon AthenaQuery ServiceServerless interactive query service for S3Log analysis, business reports, AWS cost analysis