SlideShare a Scribd company logo
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Scaling your application with AWS
relational databases
Darin Briskman | April 2018
briskman@amazon.com
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
What is Amazon RDS?
• Managed relational database service in the
AWS cloud
• Multi-engine support: Amazon Aurora,
MySQL, MariaDB, PostgreSQL, Oracle, SQL
Server
• Automated provisioning, patching, scaling,
replicas, backup/restore
• Easily scales to handle growth
• High availability with Multi-AZ and Amazon
Aurora
Amazon RDS
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Why use Amazon RDS?
• Lower TCO because we manage “the muck”
• Get more leverage from your teams
• Focus on the things that differentiate you
• Built-in high availability and cross-region
replication across multiple data centers
• Even a small startup can leverage multiple data
centers to design highly available apps with over
99.95% availability
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Commercial Open Source Cloud Native
Which RDS engine should I use?
Amazon EBS-based Storage Aurora Storage System
MySQL Compatible
PostgreSQL Compatible
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
T2 Family
• Burstable instances
• 1 vCPU/1 GB RAM > 8
vCPU 32 GB RAM
• Moderate networking
performance
• Good for smaller or variable
workloads
• Monitor CPU credit metrics
in Amazon CloudWatch
• T2.micro is eligible for free
tier
M3/M4 Family
• General-purpose instances
• 2 vCPU/8 GiB RAM > 64
vCPU 256 GiB RAM
• High-performance
networking
• Good for running CPU
intensive workloads (e.g.,
WordPress)
R3/R4 Family
• Memory-optimized instances
• 2 vCPU/16 GiB RAM > 64
vCPU 488 GiB RAM
• High-performance networking
• Good for query-intensive
workloads or high connection
counts
Which instance type should I choose?
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
General purpose (GP2)
• SSD storage
• Maximum of 16 TB!
• Leverages Amazon EBS
Elastic Volumes
• IOPS determined by
volume size
• Minimum of 100 IOPS
(below 33.33GiB)
• Bursts to 3,000 IOPS
(applicable below 1.3 TB)
• Baseline of 10,000 IOPS
(at 3.3 TB and above)
• Affordable performance
Provisioned IOPS (IO1)
• SSD storage
• Maximum of 16 TB!
• Leverages Amazon EBS
Elastic Volumes
• Maximum of 40 K IOPS
(20 K on SQL Server)
• Delivers within 10% of the
IOPS performance 99.9%
of the time
• High performance and
consistency
Magnetic
• Magnetic storage
• Maximum of 1 TB
• Supported for legacy
databases
Which storage type should I choose?
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How do I decide between GP2 and IO1?
W h y a m I n o t s e e i n g 3 0 K I O P S ?
• GP2 is a great choice, but be aware of burst credits on volumes < 1 TB
• Hitting credit-depletion results in IOPS drop—latency and queue depth metrics
will spike until credits are replenished
• Monitor BurstBalance to see percent of burst-bucket I/O credits available
• Monitor read/write IOPS to see if average IOPS is greater than the baseline
• Think of GP2 burst rate and PIOPS
stated rate as maximum I/O rates
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How do I scale my database instance?
W i l l t h e r e b e d o w n t i m e ?
• Scale compute/memory vertically up or down
• Handle higher load to grow over time
• Lower usage to control costs
• New host is attached to existing storage with minimal
downtime
• Scale up Amazon EBS storage (now up to 16 TB!)
• Amazon EBS engines now support Elastic Volumes for fast
scaling (now including SQL Server)
• No downtime for storage scaling
• Initial scaling operation may take longer, because storage is
reconfigured on older instances
• Can re-provision IOPS on the fly
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How do I ensure database high
availability?Multi-AZ provides enterprise-grade fault-tolerance
solution for production
databases
Automatic failover
Synchronous replication
Inexpensive and enabled with one click
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
What happens during a Multi-AZ failover?
H o w l o n g d o e s i t t a k e ?
• Each host manages set of Amazon
EBS volumes with a full copy of
the data
• Instances are monitored by an
external observer to maintain
consensus over quorum
• Failover initiated by automation or
through the Amazon RDS API
• Redirection to the new primary
instance is provided through DNS
DNS
Primary Standby
EC2
#1
EC2
#2
Availability Zone #1 Availability Zone #2
APP
EBS
#1
EBS
#2
PrimarySecondar
y
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Why would I use Read Replicas?
• Relieve pressure on your source
database with additional read capacity
• Bring data close to your applications in
different regions
• Promote a Read Replica to a master for
faster recovery in the event of disaster
• Upgrade a Read Replica to a new
engine version
• Supported for MySQL, MariaDB, and
PostgreSQL
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• Synchronous replication—highly
durable
• Only primary instance is active at any
point in time
• Backups can be taken from secondary
• Always in two Availability Zones within
a Region
• Database engine version upgrades
happen on primary
• Automatic failover when a problem is
detected
• Asynchronous replication—highly
scalable
• All replicas are active and can be used
for read scaling
• No backups configured by default
• Can be within an Availability Zone,
cross-AZ, or cross-region
• Database engine version upgrades
independently from source instance
• Can be manually promoted to a
standalone database
R e a d R e p l i c a sM u l t i - A Z
When should I use Multi-AZ?
When should I use Read Replicas?
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How does Amazon RDS manage backups?
• Two options – automated backups
and manual snapshots
• Amazon RDS backups leverage
Amazon EBS snapshots stored in
Amazon S3
• Transaction logs are stored every
5 minutes in Amazon S3 to support
point-in-time recovery (PITR)
• No performance penalty for
backups
• Snapshots can be copied across
regions or shared with other
accounts
Availability Zone #2
Availability Zone #1
Region #1 Region #2
Transaction Logs
DB
App
RDS
Host
RDS
Host
EBS
Vol
EBS
Vol
EBS Snapshot
Amazon
S3
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• Specify backup retention window per
instance (7-day default)
• Kept until outside of window (35-day
maximum) or instance is deleted
• Supports PITR
• Good for disaster recovery
• Manually created through AWS
console, AWS CLI, or Amazon RDS
API
• Kept until you delete them
• Restores to saved snapshot
• Use for checkpoint before making
large changes, non-production/test
environments, final copy before
deleting a database
M a n u a l s n a p s h o t sA u t o m a t e d b a c k u p s
When should I use automated backups?
When should I use snapshots?
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How do I restore a backup?
W h y d o e s i t t a k e s o l o n g ?
• Restoring creates an entirely new database instance
• Define the instance configuration just like a
new instance
• Will get the default parameter, security, and
option groups
• New volumes are hydrated from Amazon S3
• While the volume is usable immediately, full
performance requires the volume to warm up
until fully instantiated
• Migrate to a DB instance class with high I/O
capacity
• Maximize I/O during restore process
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How do I secure my Amazon RDS
database? • Amazon RDS is designed to be secure by default
• Network isolation with Amazon Virtual Private
Cloud (Amazon VPC)
• AWS Identity and Access Management (IAM)-
based resource-level permission controls
• Encryption at rest using AWS KMS (all engines) or
Oracle/Microsoft TDE
• Use SSL protection for data in transit
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
What does Amazon VPC provide?
• Places your instance in a private subnet,
making it secure from public routes on the
Internet
• Database instance IP firewall protection lets
you securely control network configuration
• Turn off Public Accessibility in DB instance
settings to restrict access outside Amazon VPC
• Use ClassicLink to network with non-VPC
resources
AWS Direct
Connect
VPN
connection
VPC
peering
Internet
gateway
Routing
rules
Availability Zone
AWS Region
10.1.0.0/16
10.1.1.0/24
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How do I grant access to my database?
• Use IAM to control who can perform actions on RDS resources
• Do not use AWS root credentials to manage Amazon RDS resources—you should
create an IAM user for everyone, including yourself
• Can use AWS Multi-Factor Authentication (MFA) to provide extra level of
protection
DBA and Ops
Amazon RDS
Controlled with IAM
Users and DBAApplications
Your database
Controlled with database grants
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How do I encrypt my database?
• Use AWS KMS-based encryption in the AWS
console
• No performance penalty for encrypting data
• Centralized access and audit of key activity
• Best practices
• Encryption cannot be removed from DB
instances
• If source is encrypted, Read Replicas must
be encrypted
• Add encryption to an unencrypted DB
instance by encrypting a snapshot copy
Data keys
Amazon
RDS
instance 3
Amazon
RDS
instance 2
Amazon
RDS
instance 1
Customer master key(s)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How do I monitor my Amazon RDS
database? Amazon CloudWatch metrics
• CPU/Storage/Memory
• Swap usage
• I/O (read and write)
• Latency (read and write)
• Throughput (read and write)
• Replica lag
Amazon CloudWatch Alarms
• Similar to on-premises monitoring tools
Enhanced monitoring for Amazon RDS
• Access to over 50 CPU, memory, file
system, and disk I/O metrics
• Low as 1-second intervals
Integration with third-party monitoring tools
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• Introducing Amazon RDS Performance
Insights
• Measures DB Load: Average Active
Sessions (AAS)
• Identifies database bottlenecks (Top
SQL)
• Easy
• Powerful
• Identifies source of bottlenecks
• Enables problem discovery
• Adjustable time frame
• Hour, day, week, and longer
• Coming soon for Amazon EBS-based
Amazon RDS engines
How do I improve database performance?
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Can I know when service events happen?
• Amazon RDS uses Amazon SNS to
receive notification when an event occurs
• Notifications can be in any form supported
by Amazon SNS (email, a text message, or
a call to an HTTP endpoint)
• Six different source types (DB instance,
DB parameter group, DB security group,
DB snapshot, DB cluster, DB cluster
snapshot)
• 17 different event categories (availability,
backup, deletion, configuration change,
etc.)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• Any maintenance that causes downtime (typically only a few times per year) will be scheduled
in your maintenance window
• Operating system or Amazon RDS software patches are usually performed without restarting
databases
• Database engine upgrades require downtime
• Minor version upgrades—automatic or manually applied
• Major version upgrades—manually applied
• Version deprecations—three- to six-month notification before scheduled upgrades
• View upcoming maintenance
events in your AWS Personal
Health Dashboard
How do you maintain my database?
H o w c a n I p l a n f o r i t ?
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How am I charged for Amazon RDS?
• Database instance (instance hours)
• Combination of Region + instance type + database engine
+ license (optional)
• Database storage (GB-mo)
• Can be either provisioned (Amazon EBS) or consumed
(Amazon Aurora)
• Provisioned IOPS (IOPS-Mo) for IO1 storage type
• Database I/O requests (IOs) for Amazon Aurora and
Amazon EBS magnetic-storage types
• Backup storage (GB-mo)
• Size of backups and snapshots stored in Amazon S3
• No charge for backup storage up to 100% of total
database storage
• Data transfer (GB-mo)
• Uses AWS regional data-transfer pricing
Amazon RDS Free Tier
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How can I save money on my database?
• Amazon RDS Reserved Instances (RIs) provide a discount over on-demand prices
• Region, instance family, and engine of on-demand usage must match to apply
benefit
• Amazon RDS RIs offer size flexibility for open-source and Oracle BYOL engines
• By default, RIs are shared between all
accounts in consolidated billing
• Use the RI utilization report to determine
how your RIs are being used
• Support for RI coverage report
coming soon
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Can I stop my database when it’s not in
use?
• Stop and start a running database instance from the
console or AWS CLI
• Available for single-AZ DB instances
• While instance is stopped, you only pay for storage
• Backup retention window is maintained while
stopped
• Instances are restarted after 7 days
• Pending maintenance operations are applied
• Instances can be stopped again if desired
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
What is Amazon Aurora ……
D atabas e r eimagined for the c loud
 Speed and availability of high-end commercial databases
 Simplicity and cost-effectiveness of open source databases
 Drop-in compatibility with MySQL and PostgreSQL
 Simple pay as you go pricing
Delivered as a managed service
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Re-imagining relational database
Automate administrative tasks – fully managed service
1
2
3
Scale-out and distributed design
Service-oriented architecture leveraging AWS services
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Scale-out, distributed architecture
Master Replica
Availability
Zone 1
Shared storage volume
Availability
Zone 2
Availability
Zone 3
Storage nodes with SSDs
 Purpose-built log-structured distributed
storage system designed for databases
 Storage volume is striped across
hundreds of storage nodes distributed
over 3 different availability zones
 Six copies of data, two copies in each
availability zone to protect against
AZ+1 failures
 Plan to apply same principles to other
layers of the stack
SQL
Transactions
Caching
SQL
Transactions
Caching
SQL
Transactions
Caching
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Aurora is fast …
5x more throughput than MySQL
3x more throughput than PostgreSQL
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
WRITE PERFORMANCE READ PERFORMANCE
MySQL SysBench results
R3.8XL: 32 cores / 244 GB RAM
5X faster than RDS MySQL 5.6 & 5.7
Five times higher throughput than stock MySQL
based on industry standard benchmarks.
0
25,000
50,000
75,000
100,000
125,000
150,000
0
100,000
200,000
300,000
400,000
500,000
600,000
700,000
Aurora MySQL 5.6 MySQL 5.7
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Do fewer I/Os
Minimize network packets
Cache prior results
Offload the database engine
DO LESS WORK
Process asynchronously
Reduce latency path
Use lock-free data structures
Batch operations together
BE MORE EFFICIENT
How did we achieve this?
DATABASES ARE ALL ABOUT I/O
NETWORK-ATTACHED STORAGE IS ALL ABOUT PACKETS/SECOND
HIGH-THROUGHPUT PROCESSING IS ALL ABOUT CONTEXT SWITCHES
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
BINLOG DATA DOUBLE-WRITELOG FRM FILES
TYPE OF WRITE
MYSQL WITH REPLICA
EBS mirrorEBS mirror
AZ 1 AZ 2
Amazon S3
EBS
Amazon Elastic
Block Store (EBS)
Primary
Instance
Replica
Instance
1
2
3
4
5
AZ 1 AZ 3
Primary
Instance
Amazon S3
AZ 2
Replica
Instance
ASYNC
4/6 QUORUM
DISTRIBUT
ED WRITES
Replica
Instance
AMAZON AURORA
780K transactions
7,388K I/Os per million txns (excludes mirroring, standby)
Average 7.4 I/Os per transaction
MySQL I/O profile for 30 min Sysbench run
27,378K transactions 35X MORE
0.95 I/Os per transaction (6X amplification) 7.7X LESS
Aurora IO profile for 30 min Sysbench run
Aurora I/O profile
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Scan
Delete
Aurora lock management
Scan
Delete
Insert
Scan Scan
Insert
Delete
Scan
Insert
Insert
MySQL lock manager Aurora lock manager
 Same locking semantics as MySQL
 Concurrent access to lock chains
Needed to support many concurrent sessions, high update throughput
 Multiple scanners in individual lock chains
 Lock-free deadlock detection
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
New performance enhancements
► Smart selector
► Logical read ahead
► Read views
► Hash joins
► Parallel query
Read performance
Write performance
Meta-data access
► NUMA aware scheduler
► Latch-free lock manager
► Instant schema update
► B-Tree concurrency
► Catalog concurrency
► Faster index build
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
What about availability?
“Performance only matters if your database is up”
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Six copies across three availability zones
4 out 6 write quorum; 3 out of 6 read quorum
Peer-to-peer replication for repairs
Volume striped across hundreds of storage nodes
SQL
Transaction
AZ 1 AZ 2 AZ 3
Caching
SQL
Transaction
AZ 1 AZ 2 AZ 3
Caching
Read and write availabilityRead availability
6-way replicated storage
Sur vives c atas tr ophic failur es
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Aurora Recovers Up to 97%Faster
3 GiB Redo
Recovered in 19
seconds
10 GiB Redo
Recovered in 50
seconds
30 GiB Redo
Recovered in 123
seconds
0
20
40
60
80
100
120
140
160
0 20,000 40,000 60,000 80,000 100,000 120,000 140,000
RecoveryTimeinSeconds(lessisbetter)
Writes / Second (more is better)
RECOVERY TIME FROM CRASH UNDER LOAD
Bubble size represents redo log, which must be recovered
As PostgreSQL
throughput goes up,
so does log size and
crash recovery time
Amazon Aurora has no redo.
Recovered in 3 seconds while
maintaining significantly greater
throughput.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Up to 15 promotable read replicas
Master
Read
Replica
Read
Replica
Read
Replica
Shared distributed storage volume
Reader end-point
► Up to 15 promotable read replicas across multiple availability zones
► Re-do log based replication leads to low replica lag – typically < 10ms
► Reader end-point with load balancing and auto-scaling
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Cross-region read replicas
Fas ter dis as ter r ec over y and enhanc ed data loc ality
Promote read-replica to a master
for faster recovery in the event of
disaster
Bring data close to your
customer’s applications in
different regions
Promote to a master for easy
migration
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Availability is about more than HW failures
You also incur availability disruptions when you
1. Patch your database software – Zero Down Time Patch
2. Perform large scale database reorganizations – Fast Cloning
3. DBA errors requiring database restores – Online Point-in-time Restore
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Database backtrack
Backtrack brings the database to a point in time without requiring restore from backups
• Backtracking from an unintentional DML or DDL operation
• Backtrack is not destructive. You can backtrack multiple times to find the right point in time
t0 t1 t2
t0 t1
t2
t3 t4
t3
t4
Rewind to t1
Rewind to t3
Invisible Invisible
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Performance Insights
Dashboard showing
Load on Database
• Easy
• Powerful
Identifies source of bottlenecks
• Top SQL
Adjustable time frame
• Hour, day, week , month
• Up to 35 days of data
Max CPU
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Fast database cloning
Create a copy of a database without
duplicate storage costs
• Creation of a clone is nearly instantaneous –
we don’t copy data
• Data copy happens only on write – when
original and cloned volume data differ
Typical use cases:
• Clone a production DB to run tests
• Reorganize a database
• Save a point in time snapshot for analysis
without impacting production system.
Production database
Clone Clone
Clone
Dev/test
applications
Benchmarks
Production
applications
Production
applications
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
DevTest environments
Master Replica
Shared storage volume
Clone
Shared storage volume
Master Replica
Production Account Development Account
Cross-account snapshot
Test on prod data
• Create a clone of multi-terabyte DB clusters in minutes. Use for diagnosis and pre-
prod testing
• Restore a production DB cluster in a development accounts for development, staging,
or partnering with other teams
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Thank you!
… and thanks to our sponsors!

More Related Content

Similar to Scaling your Application with AWS Relational Databases I AWS Dev Day 2018 (20)

PPTX
Databases on aws part 1
Parag Patil
 
PDF
Amazon Aurora (MySQL, Postgres)
AWS Germany
 
PDF
AWS Database Migration Service
techugo
 
PPTX
AWS Cloud SAA Relational Database presentation
TATA LILIAN SHULIKA
 
PPTX
Databases overview &amp; concepts
Parag Patil
 
PDF
Deep Dive on Amazon Relational Database Service (November 2016)
Julien SIMON
 
PPTX
MySQL on the Cloud
Neev Technologies
 
PDF
Deep Dive: Amazon Relational Database Service (March 2017)
Julien SIMON
 
PDF
AWSomeDayOnline Q322_2. Introduction to AWS Services Compute, Storage, Databa...
SwamiSparthsarathi
 
PDF
Deep Dive on Amazon RDS (May 2016)
Julien SIMON
 
PPTX
AcademyCloudFoundations_Module_08 (1).pptx
rawwatchtime
 
PDF
Migrating Your Databases to AWS Deep Dive on Amazon RDS and AWS
Kristana Kane
 
PDF
Deep Dive into RDS PostgreSQL Universe
Jignesh Shah
 
PPTX
week 5 cloud security computing northumbria foudation
MarufFarhanRigan1
 
PPTX
Amazon RDS System for cloud computing in Engineering
AyushmanMishra41
 
PPTX
Amazon rds product details
Apsara G
 
PDF
Percona Live 2014 - Scaling MySQL in AWS
Pythian
 
PDF
Cloudformation & VPC, EC2, RDS
Can Abacıgil
 
PPTX
Running SQL Server on AWS | John McCormack | DataGrillen 2019
John McCormack
 
PPTX
Data Scotland 2019: You can run SQL Server on AWS
John McCormack
 
Databases on aws part 1
Parag Patil
 
Amazon Aurora (MySQL, Postgres)
AWS Germany
 
AWS Database Migration Service
techugo
 
AWS Cloud SAA Relational Database presentation
TATA LILIAN SHULIKA
 
Databases overview &amp; concepts
Parag Patil
 
Deep Dive on Amazon Relational Database Service (November 2016)
Julien SIMON
 
MySQL on the Cloud
Neev Technologies
 
Deep Dive: Amazon Relational Database Service (March 2017)
Julien SIMON
 
AWSomeDayOnline Q322_2. Introduction to AWS Services Compute, Storage, Databa...
SwamiSparthsarathi
 
Deep Dive on Amazon RDS (May 2016)
Julien SIMON
 
AcademyCloudFoundations_Module_08 (1).pptx
rawwatchtime
 
Migrating Your Databases to AWS Deep Dive on Amazon RDS and AWS
Kristana Kane
 
Deep Dive into RDS PostgreSQL Universe
Jignesh Shah
 
week 5 cloud security computing northumbria foudation
MarufFarhanRigan1
 
Amazon RDS System for cloud computing in Engineering
AyushmanMishra41
 
Amazon rds product details
Apsara G
 
Percona Live 2014 - Scaling MySQL in AWS
Pythian
 
Cloudformation & VPC, EC2, RDS
Can Abacıgil
 
Running SQL Server on AWS | John McCormack | DataGrillen 2019
John McCormack
 
Data Scotland 2019: You can run SQL Server on AWS
John McCormack
 

More from AWS Germany (20)

PDF
Analytics Web Day | From Theory to Practice: Big Data Stories from the Field
AWS Germany
 
PDF
Analytics Web Day | Query your Data in S3 with SQL and optimize for Cost and ...
AWS Germany
 
PDF
Modern Applications Web Day | Impress Your Friends with Your First Serverless...
AWS Germany
 
PDF
Modern Applications Web Day | Manage Your Infrastructure and Configuration on...
AWS Germany
 
PDF
Modern Applications Web Day | Container Workloads on AWS
AWS Germany
 
PDF
Modern Applications Web Day | Continuous Delivery to Amazon EKS with Spinnaker
AWS Germany
 
PDF
Building Smart Home skills for Alexa
AWS Germany
 
PDF
Hotel or Taxi? "Sorting hat" for travel expenses with AWS ML infrastructure
AWS Germany
 
PDF
Wild Rydes with Big Data/Kinesis focus: AWS Serverless Workshop
AWS Germany
 
PDF
Log Analytics with AWS
AWS Germany
 
PDF
Deep Dive into Concepts and Tools for Analyzing Streaming Data on AWS
AWS Germany
 
PDF
AWS Programme für Nonprofits
AWS Germany
 
PDF
Microservices and Data Design
AWS Germany
 
PDF
Serverless vs. Developers – the real crash
AWS Germany
 
PDF
Query your data in S3 with SQL and optimize for cost and performance
AWS Germany
 
PDF
Secret Management with Hashicorp’s Vault
AWS Germany
 
PDF
EKS Workshop
AWS Germany
 
PDF
Scale to Infinity with ECS
AWS Germany
 
PDF
Containers on AWS - State of the Union
AWS Germany
 
PDF
Deploying and Scaling Your First Cloud Application with Amazon Lightsail
AWS Germany
 
Analytics Web Day | From Theory to Practice: Big Data Stories from the Field
AWS Germany
 
Analytics Web Day | Query your Data in S3 with SQL and optimize for Cost and ...
AWS Germany
 
Modern Applications Web Day | Impress Your Friends with Your First Serverless...
AWS Germany
 
Modern Applications Web Day | Manage Your Infrastructure and Configuration on...
AWS Germany
 
Modern Applications Web Day | Container Workloads on AWS
AWS Germany
 
Modern Applications Web Day | Continuous Delivery to Amazon EKS with Spinnaker
AWS Germany
 
Building Smart Home skills for Alexa
AWS Germany
 
Hotel or Taxi? "Sorting hat" for travel expenses with AWS ML infrastructure
AWS Germany
 
Wild Rydes with Big Data/Kinesis focus: AWS Serverless Workshop
AWS Germany
 
Log Analytics with AWS
AWS Germany
 
Deep Dive into Concepts and Tools for Analyzing Streaming Data on AWS
AWS Germany
 
AWS Programme für Nonprofits
AWS Germany
 
Microservices and Data Design
AWS Germany
 
Serverless vs. Developers – the real crash
AWS Germany
 
Query your data in S3 with SQL and optimize for cost and performance
AWS Germany
 
Secret Management with Hashicorp’s Vault
AWS Germany
 
EKS Workshop
AWS Germany
 
Scale to Infinity with ECS
AWS Germany
 
Containers on AWS - State of the Union
AWS Germany
 
Deploying and Scaling Your First Cloud Application with Amazon Lightsail
AWS Germany
 
Ad

Recently uploaded (20)

PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
Python basic programing language for automation
DanialHabibi2
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Python basic programing language for automation
DanialHabibi2
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
Ad

Scaling your Application with AWS Relational Databases I AWS Dev Day 2018

  • 1. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Scaling your application with AWS relational databases Darin Briskman | April 2018 [email protected]
  • 2. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. What is Amazon RDS? • Managed relational database service in the AWS cloud • Multi-engine support: Amazon Aurora, MySQL, MariaDB, PostgreSQL, Oracle, SQL Server • Automated provisioning, patching, scaling, replicas, backup/restore • Easily scales to handle growth • High availability with Multi-AZ and Amazon Aurora Amazon RDS
  • 3. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Why use Amazon RDS? • Lower TCO because we manage “the muck” • Get more leverage from your teams • Focus on the things that differentiate you • Built-in high availability and cross-region replication across multiple data centers • Even a small startup can leverage multiple data centers to design highly available apps with over 99.95% availability
  • 4. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Commercial Open Source Cloud Native Which RDS engine should I use? Amazon EBS-based Storage Aurora Storage System MySQL Compatible PostgreSQL Compatible
  • 5. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. T2 Family • Burstable instances • 1 vCPU/1 GB RAM > 8 vCPU 32 GB RAM • Moderate networking performance • Good for smaller or variable workloads • Monitor CPU credit metrics in Amazon CloudWatch • T2.micro is eligible for free tier M3/M4 Family • General-purpose instances • 2 vCPU/8 GiB RAM > 64 vCPU 256 GiB RAM • High-performance networking • Good for running CPU intensive workloads (e.g., WordPress) R3/R4 Family • Memory-optimized instances • 2 vCPU/16 GiB RAM > 64 vCPU 488 GiB RAM • High-performance networking • Good for query-intensive workloads or high connection counts Which instance type should I choose?
  • 6. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. General purpose (GP2) • SSD storage • Maximum of 16 TB! • Leverages Amazon EBS Elastic Volumes • IOPS determined by volume size • Minimum of 100 IOPS (below 33.33GiB) • Bursts to 3,000 IOPS (applicable below 1.3 TB) • Baseline of 10,000 IOPS (at 3.3 TB and above) • Affordable performance Provisioned IOPS (IO1) • SSD storage • Maximum of 16 TB! • Leverages Amazon EBS Elastic Volumes • Maximum of 40 K IOPS (20 K on SQL Server) • Delivers within 10% of the IOPS performance 99.9% of the time • High performance and consistency Magnetic • Magnetic storage • Maximum of 1 TB • Supported for legacy databases Which storage type should I choose?
  • 7. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How do I decide between GP2 and IO1? W h y a m I n o t s e e i n g 3 0 K I O P S ? • GP2 is a great choice, but be aware of burst credits on volumes < 1 TB • Hitting credit-depletion results in IOPS drop—latency and queue depth metrics will spike until credits are replenished • Monitor BurstBalance to see percent of burst-bucket I/O credits available • Monitor read/write IOPS to see if average IOPS is greater than the baseline • Think of GP2 burst rate and PIOPS stated rate as maximum I/O rates
  • 8. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How do I scale my database instance? W i l l t h e r e b e d o w n t i m e ? • Scale compute/memory vertically up or down • Handle higher load to grow over time • Lower usage to control costs • New host is attached to existing storage with minimal downtime • Scale up Amazon EBS storage (now up to 16 TB!) • Amazon EBS engines now support Elastic Volumes for fast scaling (now including SQL Server) • No downtime for storage scaling • Initial scaling operation may take longer, because storage is reconfigured on older instances • Can re-provision IOPS on the fly
  • 9. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How do I ensure database high availability?Multi-AZ provides enterprise-grade fault-tolerance solution for production databases Automatic failover Synchronous replication Inexpensive and enabled with one click
  • 10. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. What happens during a Multi-AZ failover? H o w l o n g d o e s i t t a k e ? • Each host manages set of Amazon EBS volumes with a full copy of the data • Instances are monitored by an external observer to maintain consensus over quorum • Failover initiated by automation or through the Amazon RDS API • Redirection to the new primary instance is provided through DNS DNS Primary Standby EC2 #1 EC2 #2 Availability Zone #1 Availability Zone #2 APP EBS #1 EBS #2 PrimarySecondar y
  • 11. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Why would I use Read Replicas? • Relieve pressure on your source database with additional read capacity • Bring data close to your applications in different regions • Promote a Read Replica to a master for faster recovery in the event of disaster • Upgrade a Read Replica to a new engine version • Supported for MySQL, MariaDB, and PostgreSQL
  • 12. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • Synchronous replication—highly durable • Only primary instance is active at any point in time • Backups can be taken from secondary • Always in two Availability Zones within a Region • Database engine version upgrades happen on primary • Automatic failover when a problem is detected • Asynchronous replication—highly scalable • All replicas are active and can be used for read scaling • No backups configured by default • Can be within an Availability Zone, cross-AZ, or cross-region • Database engine version upgrades independently from source instance • Can be manually promoted to a standalone database R e a d R e p l i c a sM u l t i - A Z When should I use Multi-AZ? When should I use Read Replicas?
  • 13. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How does Amazon RDS manage backups? • Two options – automated backups and manual snapshots • Amazon RDS backups leverage Amazon EBS snapshots stored in Amazon S3 • Transaction logs are stored every 5 minutes in Amazon S3 to support point-in-time recovery (PITR) • No performance penalty for backups • Snapshots can be copied across regions or shared with other accounts Availability Zone #2 Availability Zone #1 Region #1 Region #2 Transaction Logs DB App RDS Host RDS Host EBS Vol EBS Vol EBS Snapshot Amazon S3
  • 14. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • Specify backup retention window per instance (7-day default) • Kept until outside of window (35-day maximum) or instance is deleted • Supports PITR • Good for disaster recovery • Manually created through AWS console, AWS CLI, or Amazon RDS API • Kept until you delete them • Restores to saved snapshot • Use for checkpoint before making large changes, non-production/test environments, final copy before deleting a database M a n u a l s n a p s h o t sA u t o m a t e d b a c k u p s When should I use automated backups? When should I use snapshots?
  • 15. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How do I restore a backup? W h y d o e s i t t a k e s o l o n g ? • Restoring creates an entirely new database instance • Define the instance configuration just like a new instance • Will get the default parameter, security, and option groups • New volumes are hydrated from Amazon S3 • While the volume is usable immediately, full performance requires the volume to warm up until fully instantiated • Migrate to a DB instance class with high I/O capacity • Maximize I/O during restore process
  • 16. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How do I secure my Amazon RDS database? • Amazon RDS is designed to be secure by default • Network isolation with Amazon Virtual Private Cloud (Amazon VPC) • AWS Identity and Access Management (IAM)- based resource-level permission controls • Encryption at rest using AWS KMS (all engines) or Oracle/Microsoft TDE • Use SSL protection for data in transit
  • 17. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. What does Amazon VPC provide? • Places your instance in a private subnet, making it secure from public routes on the Internet • Database instance IP firewall protection lets you securely control network configuration • Turn off Public Accessibility in DB instance settings to restrict access outside Amazon VPC • Use ClassicLink to network with non-VPC resources AWS Direct Connect VPN connection VPC peering Internet gateway Routing rules Availability Zone AWS Region 10.1.0.0/16 10.1.1.0/24
  • 18. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How do I grant access to my database? • Use IAM to control who can perform actions on RDS resources • Do not use AWS root credentials to manage Amazon RDS resources—you should create an IAM user for everyone, including yourself • Can use AWS Multi-Factor Authentication (MFA) to provide extra level of protection DBA and Ops Amazon RDS Controlled with IAM Users and DBAApplications Your database Controlled with database grants
  • 19. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How do I encrypt my database? • Use AWS KMS-based encryption in the AWS console • No performance penalty for encrypting data • Centralized access and audit of key activity • Best practices • Encryption cannot be removed from DB instances • If source is encrypted, Read Replicas must be encrypted • Add encryption to an unencrypted DB instance by encrypting a snapshot copy Data keys Amazon RDS instance 3 Amazon RDS instance 2 Amazon RDS instance 1 Customer master key(s)
  • 20. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How do I monitor my Amazon RDS database? Amazon CloudWatch metrics • CPU/Storage/Memory • Swap usage • I/O (read and write) • Latency (read and write) • Throughput (read and write) • Replica lag Amazon CloudWatch Alarms • Similar to on-premises monitoring tools Enhanced monitoring for Amazon RDS • Access to over 50 CPU, memory, file system, and disk I/O metrics • Low as 1-second intervals Integration with third-party monitoring tools
  • 21. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • Introducing Amazon RDS Performance Insights • Measures DB Load: Average Active Sessions (AAS) • Identifies database bottlenecks (Top SQL) • Easy • Powerful • Identifies source of bottlenecks • Enables problem discovery • Adjustable time frame • Hour, day, week, and longer • Coming soon for Amazon EBS-based Amazon RDS engines How do I improve database performance?
  • 22. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Can I know when service events happen? • Amazon RDS uses Amazon SNS to receive notification when an event occurs • Notifications can be in any form supported by Amazon SNS (email, a text message, or a call to an HTTP endpoint) • Six different source types (DB instance, DB parameter group, DB security group, DB snapshot, DB cluster, DB cluster snapshot) • 17 different event categories (availability, backup, deletion, configuration change, etc.)
  • 23. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • Any maintenance that causes downtime (typically only a few times per year) will be scheduled in your maintenance window • Operating system or Amazon RDS software patches are usually performed without restarting databases • Database engine upgrades require downtime • Minor version upgrades—automatic or manually applied • Major version upgrades—manually applied • Version deprecations—three- to six-month notification before scheduled upgrades • View upcoming maintenance events in your AWS Personal Health Dashboard How do you maintain my database? H o w c a n I p l a n f o r i t ?
  • 24. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How am I charged for Amazon RDS? • Database instance (instance hours) • Combination of Region + instance type + database engine + license (optional) • Database storage (GB-mo) • Can be either provisioned (Amazon EBS) or consumed (Amazon Aurora) • Provisioned IOPS (IOPS-Mo) for IO1 storage type • Database I/O requests (IOs) for Amazon Aurora and Amazon EBS magnetic-storage types • Backup storage (GB-mo) • Size of backups and snapshots stored in Amazon S3 • No charge for backup storage up to 100% of total database storage • Data transfer (GB-mo) • Uses AWS regional data-transfer pricing Amazon RDS Free Tier
  • 25. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How can I save money on my database? • Amazon RDS Reserved Instances (RIs) provide a discount over on-demand prices • Region, instance family, and engine of on-demand usage must match to apply benefit • Amazon RDS RIs offer size flexibility for open-source and Oracle BYOL engines • By default, RIs are shared between all accounts in consolidated billing • Use the RI utilization report to determine how your RIs are being used • Support for RI coverage report coming soon
  • 26. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Can I stop my database when it’s not in use? • Stop and start a running database instance from the console or AWS CLI • Available for single-AZ DB instances • While instance is stopped, you only pay for storage • Backup retention window is maintained while stopped • Instances are restarted after 7 days • Pending maintenance operations are applied • Instances can be stopped again if desired
  • 27. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. What is Amazon Aurora …… D atabas e r eimagined for the c loud  Speed and availability of high-end commercial databases  Simplicity and cost-effectiveness of open source databases  Drop-in compatibility with MySQL and PostgreSQL  Simple pay as you go pricing Delivered as a managed service
  • 28. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Re-imagining relational database Automate administrative tasks – fully managed service 1 2 3 Scale-out and distributed design Service-oriented architecture leveraging AWS services
  • 29. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Scale-out, distributed architecture Master Replica Availability Zone 1 Shared storage volume Availability Zone 2 Availability Zone 3 Storage nodes with SSDs  Purpose-built log-structured distributed storage system designed for databases  Storage volume is striped across hundreds of storage nodes distributed over 3 different availability zones  Six copies of data, two copies in each availability zone to protect against AZ+1 failures  Plan to apply same principles to other layers of the stack SQL Transactions Caching SQL Transactions Caching SQL Transactions Caching
  • 30. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Aurora is fast … 5x more throughput than MySQL 3x more throughput than PostgreSQL
  • 31. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. WRITE PERFORMANCE READ PERFORMANCE MySQL SysBench results R3.8XL: 32 cores / 244 GB RAM 5X faster than RDS MySQL 5.6 & 5.7 Five times higher throughput than stock MySQL based on industry standard benchmarks. 0 25,000 50,000 75,000 100,000 125,000 150,000 0 100,000 200,000 300,000 400,000 500,000 600,000 700,000 Aurora MySQL 5.6 MySQL 5.7
  • 32. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Do fewer I/Os Minimize network packets Cache prior results Offload the database engine DO LESS WORK Process asynchronously Reduce latency path Use lock-free data structures Batch operations together BE MORE EFFICIENT How did we achieve this? DATABASES ARE ALL ABOUT I/O NETWORK-ATTACHED STORAGE IS ALL ABOUT PACKETS/SECOND HIGH-THROUGHPUT PROCESSING IS ALL ABOUT CONTEXT SWITCHES
  • 33. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. BINLOG DATA DOUBLE-WRITELOG FRM FILES TYPE OF WRITE MYSQL WITH REPLICA EBS mirrorEBS mirror AZ 1 AZ 2 Amazon S3 EBS Amazon Elastic Block Store (EBS) Primary Instance Replica Instance 1 2 3 4 5 AZ 1 AZ 3 Primary Instance Amazon S3 AZ 2 Replica Instance ASYNC 4/6 QUORUM DISTRIBUT ED WRITES Replica Instance AMAZON AURORA 780K transactions 7,388K I/Os per million txns (excludes mirroring, standby) Average 7.4 I/Os per transaction MySQL I/O profile for 30 min Sysbench run 27,378K transactions 35X MORE 0.95 I/Os per transaction (6X amplification) 7.7X LESS Aurora IO profile for 30 min Sysbench run Aurora I/O profile
  • 34. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Scan Delete Aurora lock management Scan Delete Insert Scan Scan Insert Delete Scan Insert Insert MySQL lock manager Aurora lock manager  Same locking semantics as MySQL  Concurrent access to lock chains Needed to support many concurrent sessions, high update throughput  Multiple scanners in individual lock chains  Lock-free deadlock detection
  • 35. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. New performance enhancements ► Smart selector ► Logical read ahead ► Read views ► Hash joins ► Parallel query Read performance Write performance Meta-data access ► NUMA aware scheduler ► Latch-free lock manager ► Instant schema update ► B-Tree concurrency ► Catalog concurrency ► Faster index build
  • 36. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. What about availability? “Performance only matters if your database is up”
  • 37. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Six copies across three availability zones 4 out 6 write quorum; 3 out of 6 read quorum Peer-to-peer replication for repairs Volume striped across hundreds of storage nodes SQL Transaction AZ 1 AZ 2 AZ 3 Caching SQL Transaction AZ 1 AZ 2 AZ 3 Caching Read and write availabilityRead availability 6-way replicated storage Sur vives c atas tr ophic failur es
  • 38. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Aurora Recovers Up to 97%Faster 3 GiB Redo Recovered in 19 seconds 10 GiB Redo Recovered in 50 seconds 30 GiB Redo Recovered in 123 seconds 0 20 40 60 80 100 120 140 160 0 20,000 40,000 60,000 80,000 100,000 120,000 140,000 RecoveryTimeinSeconds(lessisbetter) Writes / Second (more is better) RECOVERY TIME FROM CRASH UNDER LOAD Bubble size represents redo log, which must be recovered As PostgreSQL throughput goes up, so does log size and crash recovery time Amazon Aurora has no redo. Recovered in 3 seconds while maintaining significantly greater throughput.
  • 39. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Up to 15 promotable read replicas Master Read Replica Read Replica Read Replica Shared distributed storage volume Reader end-point ► Up to 15 promotable read replicas across multiple availability zones ► Re-do log based replication leads to low replica lag – typically < 10ms ► Reader end-point with load balancing and auto-scaling
  • 40. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Cross-region read replicas Fas ter dis as ter r ec over y and enhanc ed data loc ality Promote read-replica to a master for faster recovery in the event of disaster Bring data close to your customer’s applications in different regions Promote to a master for easy migration
  • 41. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Availability is about more than HW failures You also incur availability disruptions when you 1. Patch your database software – Zero Down Time Patch 2. Perform large scale database reorganizations – Fast Cloning 3. DBA errors requiring database restores – Online Point-in-time Restore
  • 42. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Database backtrack Backtrack brings the database to a point in time without requiring restore from backups • Backtracking from an unintentional DML or DDL operation • Backtrack is not destructive. You can backtrack multiple times to find the right point in time t0 t1 t2 t0 t1 t2 t3 t4 t3 t4 Rewind to t1 Rewind to t3 Invisible Invisible
  • 43. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Performance Insights Dashboard showing Load on Database • Easy • Powerful Identifies source of bottlenecks • Top SQL Adjustable time frame • Hour, day, week , month • Up to 35 days of data Max CPU
  • 44. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Fast database cloning Create a copy of a database without duplicate storage costs • Creation of a clone is nearly instantaneous – we don’t copy data • Data copy happens only on write – when original and cloned volume data differ Typical use cases: • Clone a production DB to run tests • Reorganize a database • Save a point in time snapshot for analysis without impacting production system. Production database Clone Clone Clone Dev/test applications Benchmarks Production applications Production applications
  • 45. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. DevTest environments Master Replica Shared storage volume Clone Shared storage volume Master Replica Production Account Development Account Cross-account snapshot Test on prod data • Create a clone of multi-terabyte DB clusters in minutes. Use for diagnosis and pre- prod testing • Restore a production DB cluster in a development accounts for development, staging, or partnering with other teams
  • 46. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Thank you! … and thanks to our sponsors!