SlideShare a Scribd company logo
1 of 26
Download to read offline
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Running MySQL Databases
on AWS
D A T 2 0 3
N o v e m b e r 2 8 , 2 0 1 7
AWS re:INVENT
Sailesh Krishnamurthy
S e n i o r S o f t w a r e D e v e l o p m e n t M a n a g e r , A m a z o n A u r o r a
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Agenda
• Choosing your AWS Deployment Strategy for MySQL
• Running MySQL in Amazon EC2
• Using Managed MySQL in AWS
• Amazon RDS for MySQL
• Amazon RDS for MariaDB
• Amazon Aurora
• Tips for Managed MySQL Databases in AWS
• Multi-AZ Configurations
• Read Replicas
• Monitoring
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
A Brief History of MySQL
• World’s most commonly used relational database
• Key component of the LAMP open source web application software stack
• Used in open source applications such as WordPress, Joomla, Redmine, and Drupal
• History
• First released in 1995 in Sweden by MySQL AB
• Acquired by Sun in 2008
• Launched as first Amazon RDS engine in 2009
• Acquired by Oracle in 2010
• Popular Branches
• MySQL Community Edition
• MySQL Enterprise Edition
• MariaDB Server
• Percona Server
• Amazon Aurora MySQL
Amazon RDS
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Choosing your AWS MySQL Deployment
Strategy
Amazon EC2 Amazon RDS
Self-managed
on application
server
Self-managed
on database
server
AWS-managed
open source
engines
AWS-managed
cloud native
engine
Control Automation
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• Full control over parameters of server, OS,
and database
• Remote access to host via remote shell
• Customer can install 3rd party applications
and extensions
• Customer has full responsibility for
upgrades and backups
• Customer has full responsibility for security
• High Availability, Disaster Recovery and
read scaling are expensive, complex, require
a lot of engineering
• Database is a managed appliance, so
customers can easily automate, clone and
scale
• No host access—all configurations through
AWS APIs
• Limited to managed extensions and tools
• OS and DB upgrades, data backup and
restore are provided as a service
• High infrastructure security, encryption,
certifications, tools to ensure DB security
• High Availability, Disaster Recovery, and
read scaling are managed service with a
button click or API call
A W S - m a n a g e d d a t a b a s eS e l f - m a n a g e d d a t a b a s e
Self-managed vs. AWS-managed Databases
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Running MySQL in Amazon EC2
• Install
• Install a MySQL distribution via yum or choose a pre-built machine image from the
AWS Marketplace
• Consider using EBS volumes vs. ephemeral disks
• Configure
• Operating System Configuration
• Networking and Security Configuration
• Backup/restore
• mysqldump, MySQL Enterprise Backup, Percona XtraBackup
• Cluster/replicate
• Semi-synchronous replication
• Galera Cluster/MySQL Cluster/Percona Cluster
• Monitor
• Leverage AWS CloudWatch for OS metrics
• MySQL Monitoring tools—DataDog, Percona, VividCortex, WebYog
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Benefits of Running Managed MySQL
• Managed high availability through automated
failover across multiple data centers
• Managed disaster recovery with to the minute
point-in-time recovery
• Managed read scaling through read replicas
• Push button provisioning, automated instance
and storage scaling, patching, upgrades,
security, and general care and feeding
• Lower TCO because we manage the muck
• Get more leverage from your teams
• Focus on the things that differentiate you
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
“Amazon RDS allowed us to focus
a little less on MySQL
administration and a little more
scaling out the rest of our service."
- Joey Parsons
Head of Operations at Flipboard
”
“
Flipboard is one of the world's first social magazines. Inspired
by the beauty and ease of print media, the company’s mission
is to fundamentally improve how people discover, view, and
share content across their social networks.
• From the beginning, Flipboard has
run its infrastructure on Amazon Web
Services
• One key decision was to use MySQL,
and in turn, Amazon RDS
• Flipboard uses Amazon RDS for
MySQL and its Multi-AZ capabilities
to store mission critical user data
• Key features are auto minor version
upgrade, automatic backups, easy
restores, and the ability to spin up
read replicas to add capacity
Customer Story: Flipboard
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Managed MySQL Compatible Engines
in AWS
Standard
The open source
standard MySQL
Community
The popular
community choice
Amazon Aurora
Performance
The fastest MySQL
compatible engine
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon RDS for MySQL
• Support for MySQL Community Edition versions 5.5, 5.6 and 5.7
• InnoDB and MyISAM storage engines
• Version 5.7—new features
• JSON support
• Query optimizer improvements
• GIS extensions
• Improved parallel replication
• Dynamic buffer pool resizing
• Version 8.0 coming soon
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon RDS for MariaDB
• Support for versions 10.0 and 10.1
• Same instance, regions, pricing as RDS for MySQL (including free tier)
• Differences from RDS MySQL
• XtraDB and Aria storage engines only
• Thread Pooling
• GTID
• Version 10.1—new features
• XtraDB page compression, data scrubbing, and defragmentation
• Optimistic in-order parallel replication
• ORDER BY optimization
• Version 10.2 coming soon
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Aurora
• Built from the ground up to leverage AWS
• MySQL 5.6 compatible with up to 5x better
performance on the same hardware:
100,000 writes/sec and 500,000 reads/sec
• Scalable with up to 64 TB in single database, up
to 15 read replicas
• Highly available, durable, and fault-tolerant
custom SSD storage layer: 6-way replicated
across 3 Availability Zones
• Transparent encryption for data at rest using
AWS KMS
• Stored procedures in Amazon Aurora can invoke
AWS Lambda functions
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Best Practices for MySQL Engines
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Migrating your MySQL Database into AWS
• Data Import Options
• Use mysqldump and mysql command line
• Use mysqlimport on EC2 instance
• Use external replication into AWS for minimizing downtime
• Use AWS Database Migration Services
(heterogeneous migrations/database consolidation)
• Import Backup from Amazon S3
• New for RDS MySQL
• Create full or incremental backup
with Percona XtraBackup 2.3
• Use AWS IAM role to access S3 bucket
• Use replication to catch up to changes in the
source database (if necessary)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Configuring your MySQL instance
for data loading
• Turn off backup retention (disables binlog)
• Turn off autocommit mode
• Drop indexes and disable foreign keys
• For EBS-based engines
• Use EBS-optimized instance types
• Maximize storage IOPS
• Optimize parameter settings
• innodb_flush_log_at_trx_commit, innodb_io_capacity,
innodb_io_read_threads, innodb_io_write_threads, sync_binlog
• Remember to re-enable settings after load completes!
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
MySQL/MariaDB Engines Best Practices
• Leverage Multi-AZ Configurations
• High availability for planned and unplanned
events
• Leverage Read Replicas
• Read scalability, disaster recovery, upgrades
• Leverage Enhanced Monitoring
• Additional information for tuning and
troubleshooting
• CloudWatch Logs charge (small)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Multi-AZ High Availability
• An Availability Zone is a physically distinct, independent infrastructure
• Your database is synchronously replicated to another AZ in the same AWS region
• Failover occurs automatically in response to the most important failure scenarios
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Managed MySQL Engines Multi-AZ Tips
• MySQL and MariaDB
• Configure Multi-AZ before you go into production
• Multi-AZ failovers can be less than a minute with most of the downtime in DNS
propagation
• Multi-AZ introduces an extra commit latency so MAZ IOPS will typically be lower
compared to SAZ
• If MySQL needs to do a crash recovery or other I/O intensive operation before it can
start, the speed of storage will have significant impact on startup time
• Amazon Aurora
• Amazon Aurora automatically replicates your storage six ways, across three
Availability Zones
• Use Multi-AZ instance for additional availability
• Failovers are typically under 30 seconds
• Assign a promotion priority tier to each instance on your database cluster to get more
control over replica promotion during failovers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Horizontal Scaling with Read Replicas
• Horizontal scaling of read heavy workloads
• Offload long reporting queries
• Easy to re-create if fallen behind
• Cross-Region Read Replicas bring data close to your applications in different regions
• Promote read replica to a master for faster recovery in the event of disaster
• Amazon Aurora uses shared storage within a region so no additional storage
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon RDS for MySQL/MariaDB
Replication Tips
• Read Replicas can be made writeable
• Useful for changes like adding an index for reporting
• Think of it as “breaking the warranty”
• Amazon RDS supports managed replication chaining (source > target > target)
• Replica in one region and then a cross-region replica in another region
• Amazon RDS limits to 5 replicas per source (can be extended upon request)
• Amazon RDS instances support non-managed replication
• Uses stored procedures rather than RDS API
• Useful for on-premises to RDS, EC2 to RDS scenarios
• Safety Tips
• MariaDB provides crash-safe replication using Global Transaction Identifiers (GTIDs)
• Always have a primary key on a replicated table!
• Leave sync_binlog set to 1 (RDS default)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon Aurora Replication Tips
• Use Aurora Replicas for scaling read operations and increasing availability
• Aurora Replicas are independent endpoints in an Aurora DB cluster
• Low latency, no additional database storage
• Up to 15 Aurora Replicas can be distributed across the Availability Zones
that a DB cluster spans within an AWS Region
• Use reader endpoints for load balancing
• New—use auto-scaling of Replicas in the reader endpoint
• Use logical (binlog) replication for cross-region or external sources and targets
• Can use Amazon Aurora as replica of your MySQL Database
• If you do use multi-threaded replication, we recommend that you test
thoroughly
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• Amazon CloudWatch metrics visible in the
AWS Console
• CPU utilization
• Storage
• Memory
• I/O (read and write)
• Latency (read and write)
• Throughput (read and write)
• Replica lag
• Many additional metrics for Amazon
Aurora
• More coming soon!
• Amazon CloudWatch Alarms
• Integrated with third-party monitoring
tools
Amazon RDS CloudWatch Metrics
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• Additional 50+ system/OS
metrics in the AWS
Console
• Sorted process list view
• 1-60 sec granularity
• Alarms on specific metrics
• Egress to CloudWatch Logs
• Integration with
third-party tools
Amazon RDS Enhanced Monitoring
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• Measures “DB Load,” aka Average
Active Sessions
• Identifies source of bottlenecks
• Easy
• Powerful
• Top SQL
• Enables problem discovery
• Adjustable timeframe
• Hour, day, week, and longer
• Coming soon for Amazon Aurora
MySQL, Amazon RDS for MySQL,
and Amazon RDS for MariaDB
Amazon RDS Performance Insights
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Audit Plug-in for MySQL Engines
• Provides customer configurable event logging for database activity
• Auditable events include logins, queries, and tables accessed
• Individual users can be included or excluded from the audit
• The MariaDB audit plug-in is supported on the following RDS engines:
• MySQL 5.6
• MySQL 5.7
• MariaDB 10.0
• MariaDB 10.1
• Amazon Aurora
• Available via RDS option group
• Be sure to test for impact on server performance
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Thank you!
a w s . a m a z o n . c o m / r d s

More Related Content

What's hot

DAT324_Expedia Flies with DynamoDB Lightning Fast Stream Processing for Trave...
DAT324_Expedia Flies with DynamoDB Lightning Fast Stream Processing for Trave...DAT324_Expedia Flies with DynamoDB Lightning Fast Stream Processing for Trave...
DAT324_Expedia Flies with DynamoDB Lightning Fast Stream Processing for Trave...Amazon Web Services
 
STG206_Big Data Data Lakes and Data Oceans
STG206_Big Data Data Lakes and Data OceansSTG206_Big Data Data Lakes and Data Oceans
STG206_Big Data Data Lakes and Data OceansAmazon Web Services
 
Scaling up to Your First 10 Million Users
Scaling up to Your First 10 Million UsersScaling up to Your First 10 Million Users
Scaling up to Your First 10 Million UsersAmazon Web Services
 
DAT339_Replicate, Analyze, and Visualize Datasets Using AWS Database Migratio...
DAT339_Replicate, Analyze, and Visualize Datasets Using AWS Database Migratio...DAT339_Replicate, Analyze, and Visualize Datasets Using AWS Database Migratio...
DAT339_Replicate, Analyze, and Visualize Datasets Using AWS Database Migratio...Amazon Web Services
 
MBL201_Progressive Web Apps in the Real World
MBL201_Progressive Web Apps in the Real WorldMBL201_Progressive Web Apps in the Real World
MBL201_Progressive Web Apps in the Real WorldAmazon Web Services
 
NET309_Best Practices for Securing an Amazon Virtual Private Cloud
NET309_Best Practices for Securing an Amazon Virtual Private CloudNET309_Best Practices for Securing an Amazon Virtual Private Cloud
NET309_Best Practices for Securing an Amazon Virtual Private CloudAmazon Web Services
 
CMP217_Scale In-Memory Workloads on Amazon EC2 X1 and X1e Instances with up t...
CMP217_Scale In-Memory Workloads on Amazon EC2 X1 and X1e Instances with up t...CMP217_Scale In-Memory Workloads on Amazon EC2 X1 and X1e Instances with up t...
CMP217_Scale In-Memory Workloads on Amazon EC2 X1 and X1e Instances with up t...Amazon Web Services
 
DEV207_Deploying and Managing Ruby Applications on AWS
DEV207_Deploying and Managing Ruby Applications on AWSDEV207_Deploying and Managing Ruby Applications on AWS
DEV207_Deploying and Managing Ruby Applications on AWSAmazon Web Services
 
ARC306_High Resiliency & Availability Of Online Entertainment Communities Usi...
ARC306_High Resiliency & Availability Of Online Entertainment Communities Usi...ARC306_High Resiliency & Availability Of Online Entertainment Communities Usi...
ARC306_High Resiliency & Availability Of Online Entertainment Communities Usi...Amazon Web Services
 
Deploying Business Analytics at Enterprise Scale - AWS Online Tech Talks
Deploying Business Analytics at Enterprise Scale - AWS Online Tech TalksDeploying Business Analytics at Enterprise Scale - AWS Online Tech Talks
Deploying Business Analytics at Enterprise Scale - AWS Online Tech TalksAmazon Web Services
 
I Want to Analyze and Visualize Website Access Logs, but Why Do I Need Server...
I Want to Analyze and Visualize Website Access Logs, but Why Do I Need Server...I Want to Analyze and Visualize Website Access Logs, but Why Do I Need Server...
I Want to Analyze and Visualize Website Access Logs, but Why Do I Need Server...Amazon Web Services
 
MBL209_Learn How MicroStrategy on AWS is Helping Vivint Solar Deliver Clean E...
MBL209_Learn How MicroStrategy on AWS is Helping Vivint Solar Deliver Clean E...MBL209_Learn How MicroStrategy on AWS is Helping Vivint Solar Deliver Clean E...
MBL209_Learn How MicroStrategy on AWS is Helping Vivint Solar Deliver Clean E...Amazon Web Services
 
AWS X-Ray: Debugging Applications at Scale - AWS Online Tech Talks
AWS X-Ray: Debugging Applications at Scale - AWS Online Tech TalksAWS X-Ray: Debugging Applications at Scale - AWS Online Tech Talks
AWS X-Ray: Debugging Applications at Scale - AWS Online Tech TalksAmazon Web Services
 
MBL204_Architecting Cost-Effective Mobile Backends for Scale, Security, and P...
MBL204_Architecting Cost-Effective Mobile Backends for Scale, Security, and P...MBL204_Architecting Cost-Effective Mobile Backends for Scale, Security, and P...
MBL204_Architecting Cost-Effective Mobile Backends for Scale, Security, and P...Amazon Web Services
 
GPSTEC326-GPS Industry 4.0 AI and the Future of Manufacturing
GPSTEC326-GPS Industry 4.0 AI and the Future of ManufacturingGPSTEC326-GPS Industry 4.0 AI and the Future of Manufacturing
GPSTEC326-GPS Industry 4.0 AI and the Future of ManufacturingAmazon Web Services
 
GPSWKS408-GPS Migrate Your Databases with AWS Database Migration Service and ...
GPSWKS408-GPS Migrate Your Databases with AWS Database Migration Service and ...GPSWKS408-GPS Migrate Your Databases with AWS Database Migration Service and ...
GPSWKS408-GPS Migrate Your Databases with AWS Database Migration Service and ...Amazon Web Services
 
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud Data
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud DataGPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud Data
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud DataAmazon Web Services
 
Run Your HPC Workload at Scale for a Fraction of the Cost - AWS Online Tech T...
Run Your HPC Workload at Scale for a Fraction of the Cost - AWS Online Tech T...Run Your HPC Workload at Scale for a Fraction of the Cost - AWS Online Tech T...
Run Your HPC Workload at Scale for a Fraction of the Cost - AWS Online Tech T...Amazon Web Services
 
DEV205_Developing Applications on AWS in the JVM
DEV205_Developing Applications on AWS in the JVMDEV205_Developing Applications on AWS in the JVM
DEV205_Developing Applications on AWS in the JVMAmazon Web Services
 
Migrating Your Databases to AWS – Tools and Services (Level 100)
Migrating Your Databases to AWS – Tools and Services (Level 100)Migrating Your Databases to AWS – Tools and Services (Level 100)
Migrating Your Databases to AWS – Tools and Services (Level 100)Amazon Web Services
 

What's hot (20)

DAT324_Expedia Flies with DynamoDB Lightning Fast Stream Processing for Trave...
DAT324_Expedia Flies with DynamoDB Lightning Fast Stream Processing for Trave...DAT324_Expedia Flies with DynamoDB Lightning Fast Stream Processing for Trave...
DAT324_Expedia Flies with DynamoDB Lightning Fast Stream Processing for Trave...
 
STG206_Big Data Data Lakes and Data Oceans
STG206_Big Data Data Lakes and Data OceansSTG206_Big Data Data Lakes and Data Oceans
STG206_Big Data Data Lakes and Data Oceans
 
Scaling up to Your First 10 Million Users
Scaling up to Your First 10 Million UsersScaling up to Your First 10 Million Users
Scaling up to Your First 10 Million Users
 
DAT339_Replicate, Analyze, and Visualize Datasets Using AWS Database Migratio...
DAT339_Replicate, Analyze, and Visualize Datasets Using AWS Database Migratio...DAT339_Replicate, Analyze, and Visualize Datasets Using AWS Database Migratio...
DAT339_Replicate, Analyze, and Visualize Datasets Using AWS Database Migratio...
 
MBL201_Progressive Web Apps in the Real World
MBL201_Progressive Web Apps in the Real WorldMBL201_Progressive Web Apps in the Real World
MBL201_Progressive Web Apps in the Real World
 
NET309_Best Practices for Securing an Amazon Virtual Private Cloud
NET309_Best Practices for Securing an Amazon Virtual Private CloudNET309_Best Practices for Securing an Amazon Virtual Private Cloud
NET309_Best Practices for Securing an Amazon Virtual Private Cloud
 
CMP217_Scale In-Memory Workloads on Amazon EC2 X1 and X1e Instances with up t...
CMP217_Scale In-Memory Workloads on Amazon EC2 X1 and X1e Instances with up t...CMP217_Scale In-Memory Workloads on Amazon EC2 X1 and X1e Instances with up t...
CMP217_Scale In-Memory Workloads on Amazon EC2 X1 and X1e Instances with up t...
 
DEV207_Deploying and Managing Ruby Applications on AWS
DEV207_Deploying and Managing Ruby Applications on AWSDEV207_Deploying and Managing Ruby Applications on AWS
DEV207_Deploying and Managing Ruby Applications on AWS
 
ARC306_High Resiliency & Availability Of Online Entertainment Communities Usi...
ARC306_High Resiliency & Availability Of Online Entertainment Communities Usi...ARC306_High Resiliency & Availability Of Online Entertainment Communities Usi...
ARC306_High Resiliency & Availability Of Online Entertainment Communities Usi...
 
Deploying Business Analytics at Enterprise Scale - AWS Online Tech Talks
Deploying Business Analytics at Enterprise Scale - AWS Online Tech TalksDeploying Business Analytics at Enterprise Scale - AWS Online Tech Talks
Deploying Business Analytics at Enterprise Scale - AWS Online Tech Talks
 
I Want to Analyze and Visualize Website Access Logs, but Why Do I Need Server...
I Want to Analyze and Visualize Website Access Logs, but Why Do I Need Server...I Want to Analyze and Visualize Website Access Logs, but Why Do I Need Server...
I Want to Analyze and Visualize Website Access Logs, but Why Do I Need Server...
 
MBL209_Learn How MicroStrategy on AWS is Helping Vivint Solar Deliver Clean E...
MBL209_Learn How MicroStrategy on AWS is Helping Vivint Solar Deliver Clean E...MBL209_Learn How MicroStrategy on AWS is Helping Vivint Solar Deliver Clean E...
MBL209_Learn How MicroStrategy on AWS is Helping Vivint Solar Deliver Clean E...
 
AWS X-Ray: Debugging Applications at Scale - AWS Online Tech Talks
AWS X-Ray: Debugging Applications at Scale - AWS Online Tech TalksAWS X-Ray: Debugging Applications at Scale - AWS Online Tech Talks
AWS X-Ray: Debugging Applications at Scale - AWS Online Tech Talks
 
MBL204_Architecting Cost-Effective Mobile Backends for Scale, Security, and P...
MBL204_Architecting Cost-Effective Mobile Backends for Scale, Security, and P...MBL204_Architecting Cost-Effective Mobile Backends for Scale, Security, and P...
MBL204_Architecting Cost-Effective Mobile Backends for Scale, Security, and P...
 
GPSTEC326-GPS Industry 4.0 AI and the Future of Manufacturing
GPSTEC326-GPS Industry 4.0 AI and the Future of ManufacturingGPSTEC326-GPS Industry 4.0 AI and the Future of Manufacturing
GPSTEC326-GPS Industry 4.0 AI and the Future of Manufacturing
 
GPSWKS408-GPS Migrate Your Databases with AWS Database Migration Service and ...
GPSWKS408-GPS Migrate Your Databases with AWS Database Migration Service and ...GPSWKS408-GPS Migrate Your Databases with AWS Database Migration Service and ...
GPSWKS408-GPS Migrate Your Databases with AWS Database Migration Service and ...
 
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud Data
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud DataGPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud Data
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud Data
 
Run Your HPC Workload at Scale for a Fraction of the Cost - AWS Online Tech T...
Run Your HPC Workload at Scale for a Fraction of the Cost - AWS Online Tech T...Run Your HPC Workload at Scale for a Fraction of the Cost - AWS Online Tech T...
Run Your HPC Workload at Scale for a Fraction of the Cost - AWS Online Tech T...
 
DEV205_Developing Applications on AWS in the JVM
DEV205_Developing Applications on AWS in the JVMDEV205_Developing Applications on AWS in the JVM
DEV205_Developing Applications on AWS in the JVM
 
Migrating Your Databases to AWS – Tools and Services (Level 100)
Migrating Your Databases to AWS – Tools and Services (Level 100)Migrating Your Databases to AWS – Tools and Services (Level 100)
Migrating Your Databases to AWS – Tools and Services (Level 100)
 

Similar to DAT203_Running MySQL Databases on AWS

DAT302_Deep Dive on Amazon Relational Database Service (RDS)
DAT302_Deep Dive on Amazon Relational Database Service (RDS)DAT302_Deep Dive on Amazon Relational Database Service (RDS)
DAT302_Deep Dive on Amazon Relational Database Service (RDS)Amazon Web Services
 
What’s New in Amazon RDS for Open-Source and Commercial Databases
What’s New in Amazon RDS for Open-Source and Commercial DatabasesWhat’s New in Amazon RDS for Open-Source and Commercial Databases
What’s New in Amazon RDS for Open-Source and Commercial DatabasesAmazon Web Services
 
What’s new in Amazon RDS - ADB207 - Chicago AWS Summit
What’s new in Amazon RDS - ADB207 - Chicago AWS SummitWhat’s new in Amazon RDS - ADB207 - Chicago AWS Summit
What’s new in Amazon RDS - ADB207 - Chicago AWS SummitAmazon Web Services
 
Relational Database Services on AWS - Bill Baldwin
Relational Database Services on AWS - Bill BaldwinRelational Database Services on AWS - Bill Baldwin
Relational Database Services on AWS - Bill BaldwinAmazon Web Services
 
Open Source Managed Databases: Database Week SF
Open Source Managed Databases: Database Week SFOpen Source Managed Databases: Database Week SF
Open Source Managed Databases: Database Week SFAmazon Web Services
 
Open Source Databases on the Cloud
Open Source Databases on the CloudOpen Source Databases on the Cloud
Open Source Databases on the CloudAmazon Web Services
 
What's new in Amazon RDS - ADB206 - New York AWS Summit
What's new in Amazon RDS - ADB206 - New York AWS SummitWhat's new in Amazon RDS - ADB206 - New York AWS Summit
What's new in Amazon RDS - ADB206 - New York AWS SummitAmazon Web Services
 
What's New in Amazon Relational Database Service (DAT203) - AWS re:Invent 2018
What's New in Amazon Relational Database Service (DAT203) - AWS re:Invent 2018What's New in Amazon Relational Database Service (DAT203) - AWS re:Invent 2018
What's New in Amazon Relational Database Service (DAT203) - AWS re:Invent 2018Amazon Web Services
 
Amazon RDS: Deep Dive - SRV310 - Chicago AWS Summit
Amazon RDS: Deep Dive - SRV310 - Chicago AWS SummitAmazon RDS: Deep Dive - SRV310 - Chicago AWS Summit
Amazon RDS: Deep Dive - SRV310 - Chicago AWS SummitAmazon Web Services
 
Cost and Performance Optimisation in Amazon RDS - AWS Summit Sydney 2018
Cost and Performance Optimisation in Amazon RDS - AWS Summit Sydney 2018Cost and Performance Optimisation in Amazon RDS - AWS Summit Sydney 2018
Cost and Performance Optimisation in Amazon RDS - AWS Summit Sydney 2018Amazon Web Services
 
Amazon RDS & Amazon Aurora: Relational Databases on AWS - SRV206 - Atlanta AW...
Amazon RDS & Amazon Aurora: Relational Databases on AWS - SRV206 - Atlanta AW...Amazon RDS & Amazon Aurora: Relational Databases on AWS - SRV206 - Atlanta AW...
Amazon RDS & Amazon Aurora: Relational Databases on AWS - SRV206 - Atlanta AW...Amazon Web Services
 
Introduction to AWS Database Services
Introduction to AWS Database ServicesIntroduction to AWS Database Services
Introduction to AWS Database ServicesAmazon Web Services
 
Introduction to AWS Database Services
Introduction to AWS Database ServicesIntroduction to AWS Database Services
Introduction to AWS Database ServicesAmazon Web Services
 
10 Hacks for Optimizing MySQL in the Cloud - AWS Online Tech Talks
10 Hacks for Optimizing MySQL in the Cloud - AWS Online Tech Talks10 Hacks for Optimizing MySQL in the Cloud - AWS Online Tech Talks
10 Hacks for Optimizing MySQL in the Cloud - AWS Online Tech TalksAmazon Web Services
 
Design, Deploy, and Optimize Microsoft SQL Server on AWS - WIN306 - re:Invent...
Design, Deploy, and Optimize Microsoft SQL Server on AWS - WIN306 - re:Invent...Design, Deploy, and Optimize Microsoft SQL Server on AWS - WIN306 - re:Invent...
Design, Deploy, and Optimize Microsoft SQL Server on AWS - WIN306 - re:Invent...Amazon Web Services
 
Running Oracle Databases on Amazon RDS - DAT313 - re:Invent 2017
Running Oracle Databases on Amazon RDS - DAT313 - re:Invent 2017Running Oracle Databases on Amazon RDS - DAT313 - re:Invent 2017
Running Oracle Databases on Amazon RDS - DAT313 - re:Invent 2017Amazon Web Services
 
Relational Database Services on AWS
Relational Database Services on AWSRelational Database Services on AWS
Relational Database Services on AWSAmazon Web Services
 
Amazon Relational Database Service – How is it different to what you do today ?
Amazon Relational Database Service – How is it different to what you do today ?Amazon Relational Database Service – How is it different to what you do today ?
Amazon Relational Database Service – How is it different to what you do today ?Amazon Web Services
 

Similar to DAT203_Running MySQL Databases on AWS (20)

DAT302_Deep Dive on Amazon Relational Database Service (RDS)
DAT302_Deep Dive on Amazon Relational Database Service (RDS)DAT302_Deep Dive on Amazon Relational Database Service (RDS)
DAT302_Deep Dive on Amazon Relational Database Service (RDS)
 
What’s New in Amazon RDS for Open-Source and Commercial Databases
What’s New in Amazon RDS for Open-Source and Commercial DatabasesWhat’s New in Amazon RDS for Open-Source and Commercial Databases
What’s New in Amazon RDS for Open-Source and Commercial Databases
 
What’s new in Amazon RDS - ADB207 - Chicago AWS Summit
What’s new in Amazon RDS - ADB207 - Chicago AWS SummitWhat’s new in Amazon RDS - ADB207 - Chicago AWS Summit
What’s new in Amazon RDS - ADB207 - Chicago AWS Summit
 
Relational Database Services on AWS - Bill Baldwin
Relational Database Services on AWS - Bill BaldwinRelational Database Services on AWS - Bill Baldwin
Relational Database Services on AWS - Bill Baldwin
 
Open Source Managed Databases: Database Week SF
Open Source Managed Databases: Database Week SFOpen Source Managed Databases: Database Week SF
Open Source Managed Databases: Database Week SF
 
Open Source Databases on the Cloud
Open Source Databases on the CloudOpen Source Databases on the Cloud
Open Source Databases on the Cloud
 
What's new in Amazon RDS - ADB206 - New York AWS Summit
What's new in Amazon RDS - ADB206 - New York AWS SummitWhat's new in Amazon RDS - ADB206 - New York AWS Summit
What's new in Amazon RDS - ADB206 - New York AWS Summit
 
MySQL and MariaDB
MySQL and MariaDBMySQL and MariaDB
MySQL and MariaDB
 
What's New in Amazon Relational Database Service (DAT203) - AWS re:Invent 2018
What's New in Amazon Relational Database Service (DAT203) - AWS re:Invent 2018What's New in Amazon Relational Database Service (DAT203) - AWS re:Invent 2018
What's New in Amazon Relational Database Service (DAT203) - AWS re:Invent 2018
 
Amazon RDS: Deep Dive - SRV310 - Chicago AWS Summit
Amazon RDS: Deep Dive - SRV310 - Chicago AWS SummitAmazon RDS: Deep Dive - SRV310 - Chicago AWS Summit
Amazon RDS: Deep Dive - SRV310 - Chicago AWS Summit
 
Cost and Performance Optimisation in Amazon RDS - AWS Summit Sydney 2018
Cost and Performance Optimisation in Amazon RDS - AWS Summit Sydney 2018Cost and Performance Optimisation in Amazon RDS - AWS Summit Sydney 2018
Cost and Performance Optimisation in Amazon RDS - AWS Summit Sydney 2018
 
Amazon RDS_Deep Dive - SRV310
Amazon RDS_Deep Dive - SRV310 Amazon RDS_Deep Dive - SRV310
Amazon RDS_Deep Dive - SRV310
 
Amazon RDS & Amazon Aurora: Relational Databases on AWS - SRV206 - Atlanta AW...
Amazon RDS & Amazon Aurora: Relational Databases on AWS - SRV206 - Atlanta AW...Amazon RDS & Amazon Aurora: Relational Databases on AWS - SRV206 - Atlanta AW...
Amazon RDS & Amazon Aurora: Relational Databases on AWS - SRV206 - Atlanta AW...
 
Introduction to AWS Database Services
Introduction to AWS Database ServicesIntroduction to AWS Database Services
Introduction to AWS Database Services
 
Introduction to AWS Database Services
Introduction to AWS Database ServicesIntroduction to AWS Database Services
Introduction to AWS Database Services
 
10 Hacks for Optimizing MySQL in the Cloud - AWS Online Tech Talks
10 Hacks for Optimizing MySQL in the Cloud - AWS Online Tech Talks10 Hacks for Optimizing MySQL in the Cloud - AWS Online Tech Talks
10 Hacks for Optimizing MySQL in the Cloud - AWS Online Tech Talks
 
Design, Deploy, and Optimize Microsoft SQL Server on AWS - WIN306 - re:Invent...
Design, Deploy, and Optimize Microsoft SQL Server on AWS - WIN306 - re:Invent...Design, Deploy, and Optimize Microsoft SQL Server on AWS - WIN306 - re:Invent...
Design, Deploy, and Optimize Microsoft SQL Server on AWS - WIN306 - re:Invent...
 
Running Oracle Databases on Amazon RDS - DAT313 - re:Invent 2017
Running Oracle Databases on Amazon RDS - DAT313 - re:Invent 2017Running Oracle Databases on Amazon RDS - DAT313 - re:Invent 2017
Running Oracle Databases on Amazon RDS - DAT313 - re:Invent 2017
 
Relational Database Services on AWS
Relational Database Services on AWSRelational Database Services on AWS
Relational Database Services on AWS
 
Amazon Relational Database Service – How is it different to what you do today ?
Amazon Relational Database Service – How is it different to what you do today ?Amazon Relational Database Service – How is it different to what you do today ?
Amazon Relational Database Service – How is it different to what you do today ?
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

DAT203_Running MySQL Databases on AWS

  • 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Running MySQL Databases on AWS D A T 2 0 3 N o v e m b e r 2 8 , 2 0 1 7 AWS re:INVENT Sailesh Krishnamurthy S e n i o r S o f t w a r e D e v e l o p m e n t M a n a g e r , A m a z o n A u r o r a
  • 2. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Agenda • Choosing your AWS Deployment Strategy for MySQL • Running MySQL in Amazon EC2 • Using Managed MySQL in AWS • Amazon RDS for MySQL • Amazon RDS for MariaDB • Amazon Aurora • Tips for Managed MySQL Databases in AWS • Multi-AZ Configurations • Read Replicas • Monitoring
  • 3. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. A Brief History of MySQL • World’s most commonly used relational database • Key component of the LAMP open source web application software stack • Used in open source applications such as WordPress, Joomla, Redmine, and Drupal • History • First released in 1995 in Sweden by MySQL AB • Acquired by Sun in 2008 • Launched as first Amazon RDS engine in 2009 • Acquired by Oracle in 2010 • Popular Branches • MySQL Community Edition • MySQL Enterprise Edition • MariaDB Server • Percona Server • Amazon Aurora MySQL Amazon RDS
  • 4. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Choosing your AWS MySQL Deployment Strategy Amazon EC2 Amazon RDS Self-managed on application server Self-managed on database server AWS-managed open source engines AWS-managed cloud native engine Control Automation
  • 5. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • Full control over parameters of server, OS, and database • Remote access to host via remote shell • Customer can install 3rd party applications and extensions • Customer has full responsibility for upgrades and backups • Customer has full responsibility for security • High Availability, Disaster Recovery and read scaling are expensive, complex, require a lot of engineering • Database is a managed appliance, so customers can easily automate, clone and scale • No host access—all configurations through AWS APIs • Limited to managed extensions and tools • OS and DB upgrades, data backup and restore are provided as a service • High infrastructure security, encryption, certifications, tools to ensure DB security • High Availability, Disaster Recovery, and read scaling are managed service with a button click or API call A W S - m a n a g e d d a t a b a s eS e l f - m a n a g e d d a t a b a s e Self-managed vs. AWS-managed Databases
  • 6. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Running MySQL in Amazon EC2 • Install • Install a MySQL distribution via yum or choose a pre-built machine image from the AWS Marketplace • Consider using EBS volumes vs. ephemeral disks • Configure • Operating System Configuration • Networking and Security Configuration • Backup/restore • mysqldump, MySQL Enterprise Backup, Percona XtraBackup • Cluster/replicate • Semi-synchronous replication • Galera Cluster/MySQL Cluster/Percona Cluster • Monitor • Leverage AWS CloudWatch for OS metrics • MySQL Monitoring tools—DataDog, Percona, VividCortex, WebYog
  • 7. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Benefits of Running Managed MySQL • Managed high availability through automated failover across multiple data centers • Managed disaster recovery with to the minute point-in-time recovery • Managed read scaling through read replicas • Push button provisioning, automated instance and storage scaling, patching, upgrades, security, and general care and feeding • Lower TCO because we manage the muck • Get more leverage from your teams • Focus on the things that differentiate you
  • 8. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. “Amazon RDS allowed us to focus a little less on MySQL administration and a little more scaling out the rest of our service." - Joey Parsons Head of Operations at Flipboard ” “ Flipboard is one of the world's first social magazines. Inspired by the beauty and ease of print media, the company’s mission is to fundamentally improve how people discover, view, and share content across their social networks. • From the beginning, Flipboard has run its infrastructure on Amazon Web Services • One key decision was to use MySQL, and in turn, Amazon RDS • Flipboard uses Amazon RDS for MySQL and its Multi-AZ capabilities to store mission critical user data • Key features are auto minor version upgrade, automatic backups, easy restores, and the ability to spin up read replicas to add capacity Customer Story: Flipboard
  • 9. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Managed MySQL Compatible Engines in AWS Standard The open source standard MySQL Community The popular community choice Amazon Aurora Performance The fastest MySQL compatible engine
  • 10. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon RDS for MySQL • Support for MySQL Community Edition versions 5.5, 5.6 and 5.7 • InnoDB and MyISAM storage engines • Version 5.7—new features • JSON support • Query optimizer improvements • GIS extensions • Improved parallel replication • Dynamic buffer pool resizing • Version 8.0 coming soon
  • 11. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon RDS for MariaDB • Support for versions 10.0 and 10.1 • Same instance, regions, pricing as RDS for MySQL (including free tier) • Differences from RDS MySQL • XtraDB and Aria storage engines only • Thread Pooling • GTID • Version 10.1—new features • XtraDB page compression, data scrubbing, and defragmentation • Optimistic in-order parallel replication • ORDER BY optimization • Version 10.2 coming soon
  • 12. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Aurora • Built from the ground up to leverage AWS • MySQL 5.6 compatible with up to 5x better performance on the same hardware: 100,000 writes/sec and 500,000 reads/sec • Scalable with up to 64 TB in single database, up to 15 read replicas • Highly available, durable, and fault-tolerant custom SSD storage layer: 6-way replicated across 3 Availability Zones • Transparent encryption for data at rest using AWS KMS • Stored procedures in Amazon Aurora can invoke AWS Lambda functions
  • 13. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Best Practices for MySQL Engines
  • 14. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Migrating your MySQL Database into AWS • Data Import Options • Use mysqldump and mysql command line • Use mysqlimport on EC2 instance • Use external replication into AWS for minimizing downtime • Use AWS Database Migration Services (heterogeneous migrations/database consolidation) • Import Backup from Amazon S3 • New for RDS MySQL • Create full or incremental backup with Percona XtraBackup 2.3 • Use AWS IAM role to access S3 bucket • Use replication to catch up to changes in the source database (if necessary)
  • 15. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Configuring your MySQL instance for data loading • Turn off backup retention (disables binlog) • Turn off autocommit mode • Drop indexes and disable foreign keys • For EBS-based engines • Use EBS-optimized instance types • Maximize storage IOPS • Optimize parameter settings • innodb_flush_log_at_trx_commit, innodb_io_capacity, innodb_io_read_threads, innodb_io_write_threads, sync_binlog • Remember to re-enable settings after load completes!
  • 16. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. MySQL/MariaDB Engines Best Practices • Leverage Multi-AZ Configurations • High availability for planned and unplanned events • Leverage Read Replicas • Read scalability, disaster recovery, upgrades • Leverage Enhanced Monitoring • Additional information for tuning and troubleshooting • CloudWatch Logs charge (small)
  • 17. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Multi-AZ High Availability • An Availability Zone is a physically distinct, independent infrastructure • Your database is synchronously replicated to another AZ in the same AWS region • Failover occurs automatically in response to the most important failure scenarios
  • 18. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Managed MySQL Engines Multi-AZ Tips • MySQL and MariaDB • Configure Multi-AZ before you go into production • Multi-AZ failovers can be less than a minute with most of the downtime in DNS propagation • Multi-AZ introduces an extra commit latency so MAZ IOPS will typically be lower compared to SAZ • If MySQL needs to do a crash recovery or other I/O intensive operation before it can start, the speed of storage will have significant impact on startup time • Amazon Aurora • Amazon Aurora automatically replicates your storage six ways, across three Availability Zones • Use Multi-AZ instance for additional availability • Failovers are typically under 30 seconds • Assign a promotion priority tier to each instance on your database cluster to get more control over replica promotion during failovers
  • 19. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Horizontal Scaling with Read Replicas • Horizontal scaling of read heavy workloads • Offload long reporting queries • Easy to re-create if fallen behind • Cross-Region Read Replicas bring data close to your applications in different regions • Promote read replica to a master for faster recovery in the event of disaster • Amazon Aurora uses shared storage within a region so no additional storage
  • 20. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon RDS for MySQL/MariaDB Replication Tips • Read Replicas can be made writeable • Useful for changes like adding an index for reporting • Think of it as “breaking the warranty” • Amazon RDS supports managed replication chaining (source > target > target) • Replica in one region and then a cross-region replica in another region • Amazon RDS limits to 5 replicas per source (can be extended upon request) • Amazon RDS instances support non-managed replication • Uses stored procedures rather than RDS API • Useful for on-premises to RDS, EC2 to RDS scenarios • Safety Tips • MariaDB provides crash-safe replication using Global Transaction Identifiers (GTIDs) • Always have a primary key on a replicated table! • Leave sync_binlog set to 1 (RDS default)
  • 21. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Aurora Replication Tips • Use Aurora Replicas for scaling read operations and increasing availability • Aurora Replicas are independent endpoints in an Aurora DB cluster • Low latency, no additional database storage • Up to 15 Aurora Replicas can be distributed across the Availability Zones that a DB cluster spans within an AWS Region • Use reader endpoints for load balancing • New—use auto-scaling of Replicas in the reader endpoint • Use logical (binlog) replication for cross-region or external sources and targets • Can use Amazon Aurora as replica of your MySQL Database • If you do use multi-threaded replication, we recommend that you test thoroughly
  • 22. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • Amazon CloudWatch metrics visible in the AWS Console • CPU utilization • Storage • Memory • I/O (read and write) • Latency (read and write) • Throughput (read and write) • Replica lag • Many additional metrics for Amazon Aurora • More coming soon! • Amazon CloudWatch Alarms • Integrated with third-party monitoring tools Amazon RDS CloudWatch Metrics
  • 23. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • Additional 50+ system/OS metrics in the AWS Console • Sorted process list view • 1-60 sec granularity • Alarms on specific metrics • Egress to CloudWatch Logs • Integration with third-party tools Amazon RDS Enhanced Monitoring
  • 24. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • Measures “DB Load,” aka Average Active Sessions • Identifies source of bottlenecks • Easy • Powerful • Top SQL • Enables problem discovery • Adjustable timeframe • Hour, day, week, and longer • Coming soon for Amazon Aurora MySQL, Amazon RDS for MySQL, and Amazon RDS for MariaDB Amazon RDS Performance Insights
  • 25. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Audit Plug-in for MySQL Engines • Provides customer configurable event logging for database activity • Auditable events include logins, queries, and tables accessed • Individual users can be included or excluded from the audit • The MariaDB audit plug-in is supported on the following RDS engines: • MySQL 5.6 • MySQL 5.7 • MariaDB 10.0 • MariaDB 10.1 • Amazon Aurora • Available via RDS option group • Be sure to test for impact on server performance
  • 26. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Thank you! a w s . a m a z o n . c o m / r d s