SlideShare a Scribd company logo
MySQL Migration To
AWS
As delivered in tech meetup #01
organized by www.edYoda.com
on 22nd April 2018
at zekeLabs Bangalore
About me:
Sameer Kumar
DevOps Engineer @ Intuit
10+ years
Ex- Siemens, Ex- Paytm, Ex - Snapdeal
Why Migrate Databases to Cloud ?
Why Migrate Databases to Cloud ?
Business Growth
Why Migrate Databases to Cloud ?
Business Growth Vertical
Scaling
Why Migrate Databases to Cloud ?
Business Growth Horizontal ScalingVertical
Scaling
Availability Zone 3
POD-1 POD-2 POD-N
Proxy Layer
(Routing)
Availability Zone 1
Proxy Layer
(Routing)
POD-1 POD-2 POD-N
Availability Zone 2
Proxy Layer
(Routing)
POD-1 POD-2 POD-N
Architecture – Scalability & Availability
Some statistics
~700K Login per day, ~1MM users login per day during Peak seasons.
103TB of financial data hosted in 118 MySQL physical servers.
Size varies from 600 GB to 2 TB
Nearly Zero Down
Time
Live
Migration
VPN
Different Approaches Different Time
2015
Logical Backup
Restore
mysqldump
Different Approaches Different Time
2016
DMS
2015
Logical Backup
Restore
mysqldump
Different Approaches Different Time
2017
Percona Backup
2016
DMS
2015
Logical Backup
Restore
mysqldump
Logical Backup Restore
• mysqldump
• rsync
• tar
On-Premise Slave EC2 with EBS RDS
• MySQL Client
• tar
Logical Backup Restore
• mysqldump
• rsync
• tar
On-Premise Slave EC2 with EBS RDS
• MySQL Client
• tar
• Dump : 18 Hours for 2 TB
• Sync to AWS: 180G Per Hour
• Restoration: 24~30 Hours
• Replication Catchup : 2 Days
Logical Backup Restore
• mysqldump
• rsync
• tar
On-Premise Slave EC2 with EBS RDS
• MySQL Client
• tar
• Dump : 18 Hours for 2 TB
• Sync to AWS: 180G Per Hour
• Restoration: 24~30 Hours
• Replication Catchup : 2 Days
• max_allowed_packet
• No MyISAM
• Ignore MySQL schema
• Don’t change user permission during migration
Percona XtraBackup
• Percona Xtrabackup
• AWS CLI
• tar
On-Premise Slave AWS S3 RDS
Percona XtraBackup
• Percona Xtrabackup
• AWS CLI
• tar
On-Premise Slave AWS S3 RDS
• Only MySQL 5.6
• 6 TB Limit
• Functions, Stored Procedures are not imported automatically
• Can’t use Partial Backup
Percona XtraBackup
• Percona Xtrabackup
• AWS CLI
• tar
On-Premise Slave AWS S3 RDS
• Only MySQL 5.6
• 6 TB Limit
• Functions, Stored Procedures are not imported automatically
• Can’t use Partial Backup
• S3 Copy: 180G Per Hour
• Restoration: 8 Hours for 2 TB
• Replication Catchup : 2 Days
Blue/Green Deployment with DNS switch
DB-1 DB-2 DB-N
Availability Zone 1
Proxy Layer
(Routing & Pod-picking)
App-1 App-2 App-N
Availability Zone 3
Proxy Layer
(Routing & Pod-picking)
App-1 App-2 App-N
Availability Zone 2
Proxy Layer
(Routing & Pod-picking)
App-1 App-2 App-N
Route 53
Persistence Layer - RDS
Jenkins
Web and Application Layer
Availability Zone 1
Proxy Layer
(Routing & Pod-picking)
App-1 App-1 App-1
Availability Zone 3
Proxy Layer
(Routing & Pod-picking)
App-1 App-2 App-N
Availability Zone 2
Proxy Layer
(Routing & Pod-picking)
App-1 App-2 App-N
Web and Application Layer
1. Deploy
2. Validate
3. Switch DNS Entry
Migration
Complete
Reference links
• DMS Limitations
• Migration to RDS using Percona
• RDS as Slave of External MySQL
Thank You

More Related Content

PDF
What We Learned From Building a Modern Messaging and Streaming System for Cloud
PPTX
Kafka Summit NYC 2017 - Data Processing at LinkedIn with Apache Kafka
PDF
Kafka Summit NYC 2017 - Scalable Real-Time Complex Event Processing @ Uber
PDF
Netflix Keystone—Cloud scale event processing pipeline
PDF
beSharp a serverless approach to big data on aws
PPTX
Surge 2013: Maximizing Scalability, Resiliency, and Engineering Velocity in t...
PDF
Putting Kafka Together with the Best of Google Cloud Platform
PPTX
Distributed Kafka Architecture Taboola Scale
What We Learned From Building a Modern Messaging and Streaming System for Cloud
Kafka Summit NYC 2017 - Data Processing at LinkedIn with Apache Kafka
Kafka Summit NYC 2017 - Scalable Real-Time Complex Event Processing @ Uber
Netflix Keystone—Cloud scale event processing pipeline
beSharp a serverless approach to big data on aws
Surge 2013: Maximizing Scalability, Resiliency, and Engineering Velocity in t...
Putting Kafka Together with the Best of Google Cloud Platform
Distributed Kafka Architecture Taboola Scale

What's hot (18)

PDF
#lspe Q1 2013 dynamically scaling netflix in the cloud
PPTX
Netflix Data Pipeline With Kafka
PDF
From AWS to GCP, TABLEAPP Architecture Story
PDF
The Road Most Traveled: A Kafka Story | Heikki Nousiainen, Aiven
PDF
Netflix keystone streaming data pipeline @scale in the cloud-dbtb-2016
PDF
Confluent On Azure: Why you should add Confluent to your Azure toolkit | Alic...
PDF
[GS네오텍] Google Kubernetes Engine
PPTX
goto; London: Keeping your Cloud Footprint in Check
PDF
Beaming flink to the cloud @ netflix ff 2016-monal-daxini
PDF
Kafka Summit NYC 2017 - Every Message Counts: Kafka as a Foundation for Highl...
PDF
Scalable and Reliable Logging at Pinterest
PDF
Netflix Keystone - How Netflix Handles Data Streams up to 11M Events/Sec
PDF
uReplicator: Uber Engineering’s Scalable, Robust Kafka Replicator
PDF
GCPLA Meetup Workshop - Migration from a Legacy Infrastructure to the Cloud
PDF
Structure Data 2014: BIG DATA ANALYTICS RE-INVENTED, Ryan Waite
PDF
Going from three nines to four nines using Kafka | Tejas Chopra, Netflix
PDF
Stream Processing in Uber
PDF
Tableapp architecture migration story for GCPUG.TW
#lspe Q1 2013 dynamically scaling netflix in the cloud
Netflix Data Pipeline With Kafka
From AWS to GCP, TABLEAPP Architecture Story
The Road Most Traveled: A Kafka Story | Heikki Nousiainen, Aiven
Netflix keystone streaming data pipeline @scale in the cloud-dbtb-2016
Confluent On Azure: Why you should add Confluent to your Azure toolkit | Alic...
[GS네오텍] Google Kubernetes Engine
goto; London: Keeping your Cloud Footprint in Check
Beaming flink to the cloud @ netflix ff 2016-monal-daxini
Kafka Summit NYC 2017 - Every Message Counts: Kafka as a Foundation for Highl...
Scalable and Reliable Logging at Pinterest
Netflix Keystone - How Netflix Handles Data Streams up to 11M Events/Sec
uReplicator: Uber Engineering’s Scalable, Robust Kafka Replicator
GCPLA Meetup Workshop - Migration from a Legacy Infrastructure to the Cloud
Structure Data 2014: BIG DATA ANALYTICS RE-INVENTED, Ryan Waite
Going from three nines to four nines using Kafka | Tejas Chopra, Netflix
Stream Processing in Uber
Tableapp architecture migration story for GCPUG.TW
Ad

Similar to Session 03 data_migration_at_scale_by_sameer (17)

PDF
AWS Database Services-Philadelphia AWS User Group-4-17-2018
PDF
Leapfrog into Serverless - a Deloitte-Amtrak Case Study | Serverless Confere...
PDF
Inside Freshworks' Migration from Cassandra to ScyllaDB by Premkumar Patturaj
PDF
Spark and Spark Streaming at Netfix-(Kedar Sedekar and Monal Daxini, Netflix)
PDF
AWS를 활용한 첫 빅데이터 프로젝트 시작하기(김일호)- AWS 웨비나 시리즈 2015
PDF
AWS re:Invent presentation: Unmeltable Infrastructure at Scale by Loggly
PDF
REPEAT_1_Deep_dive_on_new_features_in_Amazon_RDS_for_SQL_Server_DAT364-R1(1).pdf
PPTX
Azure Database Services for MySQL PostgreSQL and MariaDB
PDF
Cloud Architecture Tutorial - Running in the Cloud (3of3)
PDF
NetflixOSS Meetup season 3 episode 1
PPTX
Adam Dagnall: Advanced S3 compatible storage integration in CloudStack
PDF
MySQL 5.6 Replication Webinar
PDF
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControl
PPTX
Svc 202-netflix-open-source
PDF
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
PPTX
Backup on the cloud 10.1.13
PDF
2017 AWS DB Day | Amazon Athena 서비스 최신 기능 소개
AWS Database Services-Philadelphia AWS User Group-4-17-2018
Leapfrog into Serverless - a Deloitte-Amtrak Case Study | Serverless Confere...
Inside Freshworks' Migration from Cassandra to ScyllaDB by Premkumar Patturaj
Spark and Spark Streaming at Netfix-(Kedar Sedekar and Monal Daxini, Netflix)
AWS를 활용한 첫 빅데이터 프로젝트 시작하기(김일호)- AWS 웨비나 시리즈 2015
AWS re:Invent presentation: Unmeltable Infrastructure at Scale by Loggly
REPEAT_1_Deep_dive_on_new_features_in_Amazon_RDS_for_SQL_Server_DAT364-R1(1).pdf
Azure Database Services for MySQL PostgreSQL and MariaDB
Cloud Architecture Tutorial - Running in the Cloud (3of3)
NetflixOSS Meetup season 3 episode 1
Adam Dagnall: Advanced S3 compatible storage integration in CloudStack
MySQL 5.6 Replication Webinar
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControl
Svc 202-netflix-open-source
Como creamos QuestDB Cloud, un SaaS basado en Kubernetes alrededor de QuestDB...
Backup on the cloud 10.1.13
2017 AWS DB Day | Amazon Athena 서비스 최신 기능 소개
Ad

Recently uploaded (20)

PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Electronic commerce courselecture one. Pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Spectral efficient network and resource selection model in 5G networks
PPT
Teaching material agriculture food technology
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Approach and Philosophy of On baking technology
PDF
Empathic Computing: Creating Shared Understanding
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Machine learning based COVID-19 study performance prediction
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Network Security Unit 5.pdf for BCA BBA.
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
20250228 LYD VKU AI Blended-Learning.pptx
The AUB Centre for AI in Media Proposal.docx
MYSQL Presentation for SQL database connectivity
Electronic commerce courselecture one. Pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Spectral efficient network and resource selection model in 5G networks
Teaching material agriculture food technology
Unlocking AI with Model Context Protocol (MCP)
Advanced methodologies resolving dimensionality complications for autism neur...
Approach and Philosophy of On baking technology
Empathic Computing: Creating Shared Understanding
Chapter 3 Spatial Domain Image Processing.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Machine learning based COVID-19 study performance prediction
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows

Session 03 data_migration_at_scale_by_sameer

  • 1. MySQL Migration To AWS As delivered in tech meetup #01 organized by www.edYoda.com on 22nd April 2018 at zekeLabs Bangalore
  • 2. About me: Sameer Kumar DevOps Engineer @ Intuit 10+ years Ex- Siemens, Ex- Paytm, Ex - Snapdeal
  • 4. Why Migrate Databases to Cloud ? Business Growth
  • 5. Why Migrate Databases to Cloud ? Business Growth Vertical Scaling
  • 6. Why Migrate Databases to Cloud ? Business Growth Horizontal ScalingVertical Scaling
  • 7. Availability Zone 3 POD-1 POD-2 POD-N Proxy Layer (Routing) Availability Zone 1 Proxy Layer (Routing) POD-1 POD-2 POD-N Availability Zone 2 Proxy Layer (Routing) POD-1 POD-2 POD-N Architecture – Scalability & Availability
  • 8. Some statistics ~700K Login per day, ~1MM users login per day during Peak seasons. 103TB of financial data hosted in 118 MySQL physical servers. Size varies from 600 GB to 2 TB Nearly Zero Down Time
  • 10. Different Approaches Different Time 2015 Logical Backup Restore mysqldump
  • 11. Different Approaches Different Time 2016 DMS 2015 Logical Backup Restore mysqldump
  • 12. Different Approaches Different Time 2017 Percona Backup 2016 DMS 2015 Logical Backup Restore mysqldump
  • 13. Logical Backup Restore • mysqldump • rsync • tar On-Premise Slave EC2 with EBS RDS • MySQL Client • tar
  • 14. Logical Backup Restore • mysqldump • rsync • tar On-Premise Slave EC2 with EBS RDS • MySQL Client • tar • Dump : 18 Hours for 2 TB • Sync to AWS: 180G Per Hour • Restoration: 24~30 Hours • Replication Catchup : 2 Days
  • 15. Logical Backup Restore • mysqldump • rsync • tar On-Premise Slave EC2 with EBS RDS • MySQL Client • tar • Dump : 18 Hours for 2 TB • Sync to AWS: 180G Per Hour • Restoration: 24~30 Hours • Replication Catchup : 2 Days • max_allowed_packet • No MyISAM • Ignore MySQL schema • Don’t change user permission during migration
  • 16. Percona XtraBackup • Percona Xtrabackup • AWS CLI • tar On-Premise Slave AWS S3 RDS
  • 17. Percona XtraBackup • Percona Xtrabackup • AWS CLI • tar On-Premise Slave AWS S3 RDS • Only MySQL 5.6 • 6 TB Limit • Functions, Stored Procedures are not imported automatically • Can’t use Partial Backup
  • 18. Percona XtraBackup • Percona Xtrabackup • AWS CLI • tar On-Premise Slave AWS S3 RDS • Only MySQL 5.6 • 6 TB Limit • Functions, Stored Procedures are not imported automatically • Can’t use Partial Backup • S3 Copy: 180G Per Hour • Restoration: 8 Hours for 2 TB • Replication Catchup : 2 Days
  • 19. Blue/Green Deployment with DNS switch DB-1 DB-2 DB-N Availability Zone 1 Proxy Layer (Routing & Pod-picking) App-1 App-2 App-N Availability Zone 3 Proxy Layer (Routing & Pod-picking) App-1 App-2 App-N Availability Zone 2 Proxy Layer (Routing & Pod-picking) App-1 App-2 App-N Route 53 Persistence Layer - RDS Jenkins Web and Application Layer Availability Zone 1 Proxy Layer (Routing & Pod-picking) App-1 App-1 App-1 Availability Zone 3 Proxy Layer (Routing & Pod-picking) App-1 App-2 App-N Availability Zone 2 Proxy Layer (Routing & Pod-picking) App-1 App-2 App-N Web and Application Layer 1. Deploy 2. Validate 3. Switch DNS Entry
  • 21. Reference links • DMS Limitations • Migration to RDS using Percona • RDS as Slave of External MySQL