General DB Task Management
●Patching
●Backup / Restore
●Right Sizing
●Security / Encryption
●Performance Tuning
●Logs
●Security
Self Managed vs Managed Databases
●Stand by or Active/Active Setup
●TLS
●Encryption at Rest
●Auto Scaling Storage
●Critical Event Notifications
●Right Sizing
●Cost Optimization
Migration Pattern
Rehosting
Move database to the
cloud, but host it on a
VM
MySQL on EC2
Managed Database
Use one of the managed
database option
MySQL RDS
Cloud-native Database
Use the modern
database built for the
cloud
Aurora / DynamoDB
Cloud-native Databases
●Born in the Cloud
●Optimised for performance
●In-built High Availability
●In-built Fault Tolerance
●Optimised Costing
●Better Visibility
●Less Ops
Amazon Relational Database Service
●Supported Engines
○RDS, MySQL, PostgreSQL, MariaDB, MS SQL, Oracle
●Multi-AZ Support (Auto-Failover with DNS)
●VPC Private and VPC Public Access Support
○Although public access is not recommended
●Disk-size is proprotional to your IO Throughput
●Auto-Storage Scaling (upto 64 TB)
●Password and IAM based Authentication
●Encryption At Rest with KMS
●Auto Backup upto 35 Days, Point in time Recovery (till last 5 minutes)
●Performance Insights for Debugging
●Logging and Monitoring
RDS Architecture
Demo
RDS vs DigitalOcean
** The instances in RDS are optimised for Database Performance
Amazon Aurora
●Compatible with MySQL and PostgreSQL
●Cloud-native Database
●Only available in the cloud, you can not download and install
●High-performance Storage subsystem
●Regional and Global Database Support
●Upto 15 Read Replicas
●Single Writer or Multi Writer Support
●Fault Tolerant and Auto Healing Storage System
●Storage can grow automatically upto 64TB
Manages 60 million customer tickets
per single Aurora cluster for one of
their tools, Zendesk Explore.
https://aws.amazon.com/blogs/database/how-zendesk-tripled-performance-by-moving-a-legacy-system-onto-amazon-aurora-and-amazon-redshift/
In 2019, the company migrated its mission-critical
single sign-on (SSO) application from self-managed
SQL Server on EC2 to fully managed Aurora MySQL.
This service funnels authentication requests from over
142 million users and responds to over 145,000 API
requests per minute.
https://aws.amazon.com/blogs/database/migrating-autodesks-mission-critical-database-from-microsoft-sql-server-to-amazon-aurora-mysql/
Amazon DynamoDB
●NoSQL Database
●Cloud-native database
●Serverless Database
●Key-Value Store
●No Storage Provisioning
●On-demand vs Fixed Pricing for Read/Write Capacity
●Extremely popular database in AWS
●You can download DynamoDB Local for Development and Testing purposes
NoSQL Workbench for DynamoDB
●Data Modeling
●Data Visualization
●Operations Building
https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/workbench.settingup.html
Use Cases
●Serverless Backend
●Mobile App Backend
●High Performance Key Value Store
Demo
Stores 31 Billion Items in DynamoDB
to Deliver Lessons Globally
https://aws.amazon.com/solutions/case-studies/duolingo-case-study-dynamodb/
Experimental New Features
●RDS Proxy
○Manage Connections as a Service
○Useful for Severless Applications
●Aurora Serverless
●Aurora Machine Learning
○SageMaker
○Comprehend for Sentiment Analysis