SlideShare a Scribd company logo
James Sturrock, Operations Manager
February 15, 2018
MySQL at
Mastercard
©2018Mastercard.ProprietaryandConfidential.
2JANUARY 19, 2018
• We employ over 13,000 people worldwide
• One of the most recognizable brands in the world
• Our vision is “a World Beyond Cash™“
• Our mission is:
Every day, everywhere, we use our technology and expertise
to make payments safe, simple and smart
About us
©2018Mastercard.ProprietaryandConfidential.
3JANUARY 19, 2018
• James Sturrock
• Operations Manager
• With Mastercard for over 7 years
• Part of the Payment Gateway Services division
Who am I?
©2018Mastercard.ProprietaryandConfidential.
4JANUARY 19, 2018
• Our Payment Gateways processes financial transitions for
merchants globally, across a variety of sectors such as:
– Ecommerce – major online brands
– Airlines
– Cardholder Present – pub and restaurant chains,
high-street stores etc
• We bridge the gap between your bank authorizing a payment
and the merchant receiving the funds
• Due to the nature of our business, operationally we must
focus on maintaining three key objectives:
1.  Security – we handle peoples personal data as well as cardholder
data
2.  Stability – huge financial and reputational cost to merchants if
people can’t buy things
3.  Scalability – we need to ensure we can always cope with
unexpected surges in traffic (Black Friday, Sporting Events etc)
What we do
©2018Mastercard.ProprietaryandConfidential.
5JANUARY 19, 2018
• MySQL was a good fit for our Linux environment and open
source approach
• Flexibility to use it in whatever way you need to
• Stability, MySQL is almost never the problem!
• Simplicity, MySQL can be used as simply or complex as you
want
Why MySQL
©2018Mastercard.ProprietaryandConfidential.
6JANUARY 19, 2018
– Enterprise Monitor
– Enterprise Authentication
– Enterprise Scalability
• These are all products which we are now using or evaluating!
ensure that 3rd party vendor releases patches for security
vulnerabilities in a timely manner. This can’t be guaranteed from the
open source community.
• Traditionally we have failed to take advantage of the full suite
of Enterprise tools such as:
– Enterprise Monitor
– Enterprise Authentication
– Enterprise Scalability
• These are all products which we are now using or evaluating!
Why MySQL Enterprise
©2018Mastercard.ProprietaryandConfidential.
7JANUARY 19, 2018
• Around 40 servers running MySQL
• Anywhere between 1 and 12 running instances of MySQL on
a single machine
• Vast majority are running MySQL Enterprise Edition
• All running on Red Hat Enterprise Linux (64 bit)
General Overview
Hardware
Presentation
Operating System
Database
©2018Mastercard.ProprietaryandConfidential.
8JANUARY 19, 2018
• We use MySQL Enterprise Monitor along with some legacy in
house log monitoring tools
• Nagios is used for system level monitoring as
well as basic MySQL checks (such as are
instances running, is replication stalled, how
far behind is replication)
• Grafana used for monitoring “user experience”
of the platform, often the best indicator if
there is an actual problem
Monitoring
©2018Mastercard.ProprietaryandConfidential.
9JANUARY 19, 2018
• Classic “upside down tree” replication chain, A single read/
write master replicates down the chain one by one
• Having too many slaves replicating
off one master can slow down the
master!
• When carrying out a failover, there
is much less remastering to be done
• Allows for us to carry out major
schema upgrades on all slaves then
failover with no downtime
Replication
Host 1
Host 2
Host 3
Host 4 Host X
©2018Mastercard.ProprietaryandConfidential.
10JANUARY 19, 2018
• Our replication structure and database design doesn’t give us
high availability out of the box, there is still a single read/write
master
• Red Hat Cluster Suite layered on top of MySQL to provide
automated failure detection and failover
• Built in clustering and quorum functionality
• Essentially manages a VIP and ensures it is running on the
correct host
• Custom health checks are run by the cluster software to
determine if a MySQL instance or the entire host has crashed
High Availability
©2018Mastercard.ProprietaryandConfidential.
11JANUARY 19, 2018
• Replication lag during peak processing periods
– Potentially could be fixed by parallel replication
• Cumbersome process to isolate databases for Kernel
patching
– Potentially could be fixed by using GTID replication
– Potentially could be fixed by using tools like salt/fabric to automate
• Length of time for a cold started database to become “hot”
and fast enough to use
– Potentially could be fixed by migrating to InnoDB
Current Challenges…
©2018Mastercard.ProprietaryandConfidential.
12JANUARY 19, 2018
• Compliance considerations:
– MySQL 8?
– RHEL 7?
• Performance/usability improvements:
– Implement GTID replication
– Test parallel replication
• Tighter integration of MySQL into our “DevOps” toolkit
– Puppet
– Fabric/salt
The Future…..
©2018Mastercard.ProprietaryandConfidential.
13JANUARY 19, 2018
• Use SSD disks where possible!
• Always test schema changes on a dataset equivalent to
production (and test the rollback as well as the rollout)
• You can never have too many monitoring metrics across your
platform
• Having a production like stress test environment is invaluable
• Historically MySQL has not been the problem, hardware and
software bottlenecks are more common
• Disconnect database connections when reaching out to 3rd
party services (avoids rapidly reaching the max_connection
limit)
Lessons Learned…
Ad

More Related Content

Similar to MySQL At Mastercard - 2018 MySQL Days (20)

Getting Started with Apache Ignite as a Distributed Database
Getting Started with Apache Ignite as a Distributed DatabaseGetting Started with Apache Ignite as a Distributed Database
Getting Started with Apache Ignite as a Distributed Database
Roman Shtykh
 
Security practices in OpenShift
Security practices in OpenShiftSecurity practices in OpenShift
Security practices in OpenShift
Nenad Bogojevic
 
Not Just a necessary evil, it’s good for business: implementing PCI DSS contr...
Not Just a necessary evil, it’s good for business: implementing PCI DSS contr...Not Just a necessary evil, it’s good for business: implementing PCI DSS contr...
Not Just a necessary evil, it’s good for business: implementing PCI DSS contr...
DataWorks Summit
 
Data Works Berlin 2018 - Worldpay - PCI Compliance
Data Works Berlin 2018 - Worldpay - PCI ComplianceData Works Berlin 2018 - Worldpay - PCI Compliance
Data Works Berlin 2018 - Worldpay - PCI Compliance
David Walker
 
In memory computing principles by Mac Moore of GridGain
In memory computing principles by Mac Moore of GridGainIn memory computing principles by Mac Moore of GridGain
In memory computing principles by Mac Moore of GridGain
Data Con LA
 
MariaDB AX ユースケース / ColumnStore 1.2 新機能
MariaDB AX ユースケース / ColumnStore 1.2 新機能MariaDB AX ユースケース / ColumnStore 1.2 新機能
MariaDB AX ユースケース / ColumnStore 1.2 新機能
GOTO Satoru
 
Real-time analysis using an in-memory data grid - Cloud Expo 2013
Real-time analysis using an in-memory data grid - Cloud Expo 2013Real-time analysis using an in-memory data grid - Cloud Expo 2013
Real-time analysis using an in-memory data grid - Cloud Expo 2013
ScaleOut Software
 
Who Broke My Cloud? SaaS Monitoring Best Practices
Who Broke My Cloud? SaaS Monitoring Best PracticesWho Broke My Cloud? SaaS Monitoring Best Practices
Who Broke My Cloud? SaaS Monitoring Best Practices
ThousandEyes
 
November 2013 HUG: Real-time analytics with in-memory grid
November 2013 HUG: Real-time analytics with in-memory gridNovember 2013 HUG: Real-time analytics with in-memory grid
November 2013 HUG: Real-time analytics with in-memory grid
Yahoo Developer Network
 
MongoDB Evenings Houston: Implementing EDW Using MongoDB by Purvesh Patel, Ch...
MongoDB Evenings Houston: Implementing EDW Using MongoDB by Purvesh Patel, Ch...MongoDB Evenings Houston: Implementing EDW Using MongoDB by Purvesh Patel, Ch...
MongoDB Evenings Houston: Implementing EDW Using MongoDB by Purvesh Patel, Ch...
MongoDB
 
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
Olivier DASINI
 
MySQL Enterprise Edition - Complete Guide (2019)
MySQL Enterprise Edition - Complete Guide (2019)MySQL Enterprise Edition - Complete Guide (2019)
MySQL Enterprise Edition - Complete Guide (2019)
Keith Hollman
 
Webinar | Aligning GDPR Requirements with Today's Hybrid Cloud Realities
Webinar  |  Aligning GDPR Requirements with Today's Hybrid Cloud RealitiesWebinar  |  Aligning GDPR Requirements with Today's Hybrid Cloud Realities
Webinar | Aligning GDPR Requirements with Today's Hybrid Cloud Realities
DataStax
 
Practical Tips for Oracle Business Intelligence Applications 11g Implementations
Practical Tips for Oracle Business Intelligence Applications 11g ImplementationsPractical Tips for Oracle Business Intelligence Applications 11g Implementations
Practical Tips for Oracle Business Intelligence Applications 11g Implementations
Michael Rainey
 
M|18 How Copart Switched to MariaDB and Reduced Costs During Growth
M|18 How Copart Switched to MariaDB and Reduced Costs During GrowthM|18 How Copart Switched to MariaDB and Reduced Costs During Growth
M|18 How Copart Switched to MariaDB and Reduced Costs During Growth
MariaDB plc
 
Top Priorities for Cloud Application Security
Top Priorities for Cloud Application SecurityTop Priorities for Cloud Application Security
Top Priorities for Cloud Application Security
Teri Radichel
 
Bimodal IT and EDW Modernization
Bimodal IT and EDW ModernizationBimodal IT and EDW Modernization
Bimodal IT and EDW Modernization
Robert Gleave
 
Office 365 Monitoring Best Practices
Office 365 Monitoring Best PracticesOffice 365 Monitoring Best Practices
Office 365 Monitoring Best Practices
ThousandEyes
 
451 Group: Future Of Web Content Management - Open Source CMS
451 Group: Future Of Web Content Management - Open Source CMS451 Group: Future Of Web Content Management - Open Source CMS
451 Group: Future Of Web Content Management - Open Source CMS
Squiz
 
Skylads - Big Data for Telcos
Skylads - Big Data for TelcosSkylads - Big Data for Telcos
Skylads - Big Data for Telcos
Xavier Litt
 
Getting Started with Apache Ignite as a Distributed Database
Getting Started with Apache Ignite as a Distributed DatabaseGetting Started with Apache Ignite as a Distributed Database
Getting Started with Apache Ignite as a Distributed Database
Roman Shtykh
 
Security practices in OpenShift
Security practices in OpenShiftSecurity practices in OpenShift
Security practices in OpenShift
Nenad Bogojevic
 
Not Just a necessary evil, it’s good for business: implementing PCI DSS contr...
Not Just a necessary evil, it’s good for business: implementing PCI DSS contr...Not Just a necessary evil, it’s good for business: implementing PCI DSS contr...
Not Just a necessary evil, it’s good for business: implementing PCI DSS contr...
DataWorks Summit
 
Data Works Berlin 2018 - Worldpay - PCI Compliance
Data Works Berlin 2018 - Worldpay - PCI ComplianceData Works Berlin 2018 - Worldpay - PCI Compliance
Data Works Berlin 2018 - Worldpay - PCI Compliance
David Walker
 
In memory computing principles by Mac Moore of GridGain
In memory computing principles by Mac Moore of GridGainIn memory computing principles by Mac Moore of GridGain
In memory computing principles by Mac Moore of GridGain
Data Con LA
 
MariaDB AX ユースケース / ColumnStore 1.2 新機能
MariaDB AX ユースケース / ColumnStore 1.2 新機能MariaDB AX ユースケース / ColumnStore 1.2 新機能
MariaDB AX ユースケース / ColumnStore 1.2 新機能
GOTO Satoru
 
Real-time analysis using an in-memory data grid - Cloud Expo 2013
Real-time analysis using an in-memory data grid - Cloud Expo 2013Real-time analysis using an in-memory data grid - Cloud Expo 2013
Real-time analysis using an in-memory data grid - Cloud Expo 2013
ScaleOut Software
 
Who Broke My Cloud? SaaS Monitoring Best Practices
Who Broke My Cloud? SaaS Monitoring Best PracticesWho Broke My Cloud? SaaS Monitoring Best Practices
Who Broke My Cloud? SaaS Monitoring Best Practices
ThousandEyes
 
November 2013 HUG: Real-time analytics with in-memory grid
November 2013 HUG: Real-time analytics with in-memory gridNovember 2013 HUG: Real-time analytics with in-memory grid
November 2013 HUG: Real-time analytics with in-memory grid
Yahoo Developer Network
 
MongoDB Evenings Houston: Implementing EDW Using MongoDB by Purvesh Patel, Ch...
MongoDB Evenings Houston: Implementing EDW Using MongoDB by Purvesh Patel, Ch...MongoDB Evenings Houston: Implementing EDW Using MongoDB by Purvesh Patel, Ch...
MongoDB Evenings Houston: Implementing EDW Using MongoDB by Purvesh Patel, Ch...
MongoDB
 
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
Olivier DASINI
 
MySQL Enterprise Edition - Complete Guide (2019)
MySQL Enterprise Edition - Complete Guide (2019)MySQL Enterprise Edition - Complete Guide (2019)
MySQL Enterprise Edition - Complete Guide (2019)
Keith Hollman
 
Webinar | Aligning GDPR Requirements with Today's Hybrid Cloud Realities
Webinar  |  Aligning GDPR Requirements with Today's Hybrid Cloud RealitiesWebinar  |  Aligning GDPR Requirements with Today's Hybrid Cloud Realities
Webinar | Aligning GDPR Requirements with Today's Hybrid Cloud Realities
DataStax
 
Practical Tips for Oracle Business Intelligence Applications 11g Implementations
Practical Tips for Oracle Business Intelligence Applications 11g ImplementationsPractical Tips for Oracle Business Intelligence Applications 11g Implementations
Practical Tips for Oracle Business Intelligence Applications 11g Implementations
Michael Rainey
 
M|18 How Copart Switched to MariaDB and Reduced Costs During Growth
M|18 How Copart Switched to MariaDB and Reduced Costs During GrowthM|18 How Copart Switched to MariaDB and Reduced Costs During Growth
M|18 How Copart Switched to MariaDB and Reduced Costs During Growth
MariaDB plc
 
Top Priorities for Cloud Application Security
Top Priorities for Cloud Application SecurityTop Priorities for Cloud Application Security
Top Priorities for Cloud Application Security
Teri Radichel
 
Bimodal IT and EDW Modernization
Bimodal IT and EDW ModernizationBimodal IT and EDW Modernization
Bimodal IT and EDW Modernization
Robert Gleave
 
Office 365 Monitoring Best Practices
Office 365 Monitoring Best PracticesOffice 365 Monitoring Best Practices
Office 365 Monitoring Best Practices
ThousandEyes
 
451 Group: Future Of Web Content Management - Open Source CMS
451 Group: Future Of Web Content Management - Open Source CMS451 Group: Future Of Web Content Management - Open Source CMS
451 Group: Future Of Web Content Management - Open Source CMS
Squiz
 
Skylads - Big Data for Telcos
Skylads - Big Data for TelcosSkylads - Big Data for Telcos
Skylads - Big Data for Telcos
Xavier Litt
 

More from Mark Swarbrick (20)

MySQL NoSQL Document Store
MySQL NoSQL Document StoreMySQL NoSQL Document Store
MySQL NoSQL Document Store
Mark Swarbrick
 
MySQL @ the University Of Nottingham
MySQL @ the University Of NottinghamMySQL @ the University Of Nottingham
MySQL @ the University Of Nottingham
Mark Swarbrick
 
InnoDb Vs NDB Cluster
InnoDb Vs NDB ClusterInnoDb Vs NDB Cluster
InnoDb Vs NDB Cluster
Mark Swarbrick
 
MySQL Security & GDPR
MySQL Security & GDPRMySQL Security & GDPR
MySQL Security & GDPR
Mark Swarbrick
 
Intro To MySQL 2019
Intro To MySQL 2019Intro To MySQL 2019
Intro To MySQL 2019
Mark Swarbrick
 
MySQL 8
MySQL 8MySQL 8
MySQL 8
Mark Swarbrick
 
MySQL Dublin Event Nov 2018 - MySQL 8
MySQL Dublin Event Nov 2018 - MySQL 8MySQL Dublin Event Nov 2018 - MySQL 8
MySQL Dublin Event Nov 2018 - MySQL 8
Mark Swarbrick
 
MySQL Dublin Event Nov 2018 - State of the Dolphin
MySQL Dublin Event Nov 2018 - State of the DolphinMySQL Dublin Event Nov 2018 - State of the Dolphin
MySQL Dublin Event Nov 2018 - State of the Dolphin
Mark Swarbrick
 
Oracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document StoreOracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document Store
Mark Swarbrick
 
TLV - MySQL Security overview
TLV - MySQL Security overviewTLV - MySQL Security overview
TLV - MySQL Security overview
Mark Swarbrick
 
TLV - MySQL Enterprise Edition + Cloud
TLV - MySQL Enterprise Edition + CloudTLV - MySQL Enterprise Edition + Cloud
TLV - MySQL Enterprise Edition + Cloud
Mark Swarbrick
 
TLV - Whats new in MySQL 8
TLV - Whats new in MySQL 8TLV - Whats new in MySQL 8
TLV - Whats new in MySQL 8
Mark Swarbrick
 
MySQL At University Of Nottingham - 2018 MySQL Days
MySQL At University Of Nottingham - 2018 MySQL DaysMySQL At University Of Nottingham - 2018 MySQL Days
MySQL At University Of Nottingham - 2018 MySQL Days
Mark Swarbrick
 
MySQL 8 - 2018 MySQL Days
MySQL 8 - 2018 MySQL DaysMySQL 8 - 2018 MySQL Days
MySQL 8 - 2018 MySQL Days
Mark Swarbrick
 
MySQL Security + GDPR - 2018 MySQL Days
MySQL Security + GDPR - 2018 MySQL DaysMySQL Security + GDPR - 2018 MySQL Days
MySQL Security + GDPR - 2018 MySQL Days
Mark Swarbrick
 
MySQL InnoDB + NDB Cluster - 2018 MySQL Days
MySQL InnoDB + NDB Cluster - 2018 MySQL DaysMySQL InnoDB + NDB Cluster - 2018 MySQL Days
MySQL InnoDB + NDB Cluster - 2018 MySQL Days
Mark Swarbrick
 
MySQL Cloud - 2018 MySQL Days
MySQL Cloud - 2018 MySQL DaysMySQL Cloud - 2018 MySQL Days
MySQL Cloud - 2018 MySQL Days
Mark Swarbrick
 
MySQL 2018 Intro - 2018 MySQL Days
MySQL 2018 Intro - 2018 MySQL DaysMySQL 2018 Intro - 2018 MySQL Days
MySQL 2018 Intro - 2018 MySQL Days
Mark Swarbrick
 
MySQL + GDPR
MySQL + GDPRMySQL + GDPR
MySQL + GDPR
Mark Swarbrick
 
MySQL Cluster Whats New
MySQL Cluster Whats NewMySQL Cluster Whats New
MySQL Cluster Whats New
Mark Swarbrick
 
MySQL NoSQL Document Store
MySQL NoSQL Document StoreMySQL NoSQL Document Store
MySQL NoSQL Document Store
Mark Swarbrick
 
MySQL @ the University Of Nottingham
MySQL @ the University Of NottinghamMySQL @ the University Of Nottingham
MySQL @ the University Of Nottingham
Mark Swarbrick
 
MySQL Dublin Event Nov 2018 - MySQL 8
MySQL Dublin Event Nov 2018 - MySQL 8MySQL Dublin Event Nov 2018 - MySQL 8
MySQL Dublin Event Nov 2018 - MySQL 8
Mark Swarbrick
 
MySQL Dublin Event Nov 2018 - State of the Dolphin
MySQL Dublin Event Nov 2018 - State of the DolphinMySQL Dublin Event Nov 2018 - State of the Dolphin
MySQL Dublin Event Nov 2018 - State of the Dolphin
Mark Swarbrick
 
Oracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document StoreOracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document Store
Mark Swarbrick
 
TLV - MySQL Security overview
TLV - MySQL Security overviewTLV - MySQL Security overview
TLV - MySQL Security overview
Mark Swarbrick
 
TLV - MySQL Enterprise Edition + Cloud
TLV - MySQL Enterprise Edition + CloudTLV - MySQL Enterprise Edition + Cloud
TLV - MySQL Enterprise Edition + Cloud
Mark Swarbrick
 
TLV - Whats new in MySQL 8
TLV - Whats new in MySQL 8TLV - Whats new in MySQL 8
TLV - Whats new in MySQL 8
Mark Swarbrick
 
MySQL At University Of Nottingham - 2018 MySQL Days
MySQL At University Of Nottingham - 2018 MySQL DaysMySQL At University Of Nottingham - 2018 MySQL Days
MySQL At University Of Nottingham - 2018 MySQL Days
Mark Swarbrick
 
MySQL 8 - 2018 MySQL Days
MySQL 8 - 2018 MySQL DaysMySQL 8 - 2018 MySQL Days
MySQL 8 - 2018 MySQL Days
Mark Swarbrick
 
MySQL Security + GDPR - 2018 MySQL Days
MySQL Security + GDPR - 2018 MySQL DaysMySQL Security + GDPR - 2018 MySQL Days
MySQL Security + GDPR - 2018 MySQL Days
Mark Swarbrick
 
MySQL InnoDB + NDB Cluster - 2018 MySQL Days
MySQL InnoDB + NDB Cluster - 2018 MySQL DaysMySQL InnoDB + NDB Cluster - 2018 MySQL Days
MySQL InnoDB + NDB Cluster - 2018 MySQL Days
Mark Swarbrick
 
MySQL Cloud - 2018 MySQL Days
MySQL Cloud - 2018 MySQL DaysMySQL Cloud - 2018 MySQL Days
MySQL Cloud - 2018 MySQL Days
Mark Swarbrick
 
MySQL 2018 Intro - 2018 MySQL Days
MySQL 2018 Intro - 2018 MySQL DaysMySQL 2018 Intro - 2018 MySQL Days
MySQL 2018 Intro - 2018 MySQL Days
Mark Swarbrick
 
MySQL Cluster Whats New
MySQL Cluster Whats NewMySQL Cluster Whats New
MySQL Cluster Whats New
Mark Swarbrick
 
Ad

Recently uploaded (20)

AI You Can Trust: The Critical Role of Governance and Quality.pdf
AI You Can Trust: The Critical Role of Governance and Quality.pdfAI You Can Trust: The Critical Role of Governance and Quality.pdf
AI You Can Trust: The Critical Role of Governance and Quality.pdf
Precisely
 
The Future of Cisco Cloud Security: Innovations and AI Integration
The Future of Cisco Cloud Security: Innovations and AI IntegrationThe Future of Cisco Cloud Security: Innovations and AI Integration
The Future of Cisco Cloud Security: Innovations and AI Integration
Re-solution Data Ltd
 
Transcript: Canadian book publishing: Insights from the latest salary survey ...
Transcript: Canadian book publishing: Insights from the latest salary survey ...Transcript: Canadian book publishing: Insights from the latest salary survey ...
Transcript: Canadian book publishing: Insights from the latest salary survey ...
BookNet Canada
 
UiPath Agentic Automation: Community Developer Opportunities
UiPath Agentic Automation: Community Developer OpportunitiesUiPath Agentic Automation: Community Developer Opportunities
UiPath Agentic Automation: Community Developer Opportunities
DianaGray10
 
Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)
Kaya Weers
 
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Safe Software
 
Smart Investments Leveraging Agentic AI for Real Estate Success.pptx
Smart Investments Leveraging Agentic AI for Real Estate Success.pptxSmart Investments Leveraging Agentic AI for Real Estate Success.pptx
Smart Investments Leveraging Agentic AI for Real Estate Success.pptx
Seasia Infotech
 
How to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabberHow to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabber
eGrabber
 
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make .pptx
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make   .pptxWebinar - Top 5 Backup Mistakes MSPs and Businesses Make   .pptx
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make .pptx
MSP360
 
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
BookNet Canada
 
fennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solutionfennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solution
shallal2
 
Com fer un pla de gestió de dades amb l'eiNa DMP (en anglès)
Com fer un pla de gestió de dades amb l'eiNa DMP (en anglès)Com fer un pla de gestió de dades amb l'eiNa DMP (en anglès)
Com fer un pla de gestió de dades amb l'eiNa DMP (en anglès)
CSUC - Consorci de Serveis Universitaris de Catalunya
 
Unlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web AppsUnlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web Apps
Maximiliano Firtman
 
AI x Accessibility UXPA by Stew Smith and Olivier Vroom
AI x Accessibility UXPA by Stew Smith and Olivier VroomAI x Accessibility UXPA by Stew Smith and Olivier Vroom
AI x Accessibility UXPA by Stew Smith and Olivier Vroom
UXPA Boston
 
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz
 
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
Ivano Malavolta
 
Cybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and MitigationCybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and Mitigation
VICTOR MAESTRE RAMIREZ
 
Bepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firmBepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firm
Benard76
 
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptxDevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
Justin Reock
 
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à GenèveUiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPathCommunity
 
AI You Can Trust: The Critical Role of Governance and Quality.pdf
AI You Can Trust: The Critical Role of Governance and Quality.pdfAI You Can Trust: The Critical Role of Governance and Quality.pdf
AI You Can Trust: The Critical Role of Governance and Quality.pdf
Precisely
 
The Future of Cisco Cloud Security: Innovations and AI Integration
The Future of Cisco Cloud Security: Innovations and AI IntegrationThe Future of Cisco Cloud Security: Innovations and AI Integration
The Future of Cisco Cloud Security: Innovations and AI Integration
Re-solution Data Ltd
 
Transcript: Canadian book publishing: Insights from the latest salary survey ...
Transcript: Canadian book publishing: Insights from the latest salary survey ...Transcript: Canadian book publishing: Insights from the latest salary survey ...
Transcript: Canadian book publishing: Insights from the latest salary survey ...
BookNet Canada
 
UiPath Agentic Automation: Community Developer Opportunities
UiPath Agentic Automation: Community Developer OpportunitiesUiPath Agentic Automation: Community Developer Opportunities
UiPath Agentic Automation: Community Developer Opportunities
DianaGray10
 
Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)Design pattern talk by Kaya Weers - 2025 (v2)
Design pattern talk by Kaya Weers - 2025 (v2)
Kaya Weers
 
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Safe Software
 
Smart Investments Leveraging Agentic AI for Real Estate Success.pptx
Smart Investments Leveraging Agentic AI for Real Estate Success.pptxSmart Investments Leveraging Agentic AI for Real Estate Success.pptx
Smart Investments Leveraging Agentic AI for Real Estate Success.pptx
Seasia Infotech
 
How to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabberHow to Install & Activate ListGrabber - eGrabber
How to Install & Activate ListGrabber - eGrabber
eGrabber
 
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make .pptx
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make   .pptxWebinar - Top 5 Backup Mistakes MSPs and Businesses Make   .pptx
Webinar - Top 5 Backup Mistakes MSPs and Businesses Make .pptx
MSP360
 
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
BookNet Canada
 
fennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solutionfennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solution
shallal2
 
Unlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web AppsUnlocking Generative AI in your Web Apps
Unlocking Generative AI in your Web Apps
Maximiliano Firtman
 
AI x Accessibility UXPA by Stew Smith and Olivier Vroom
AI x Accessibility UXPA by Stew Smith and Olivier VroomAI x Accessibility UXPA by Stew Smith and Olivier Vroom
AI x Accessibility UXPA by Stew Smith and Olivier Vroom
UXPA Boston
 
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz
 
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
Ivano Malavolta
 
Cybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and MitigationCybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and Mitigation
VICTOR MAESTRE RAMIREZ
 
Bepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firmBepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firm
Benard76
 
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptxDevOpsDays SLC - Platform Engineers are Product Managers.pptx
DevOpsDays SLC - Platform Engineers are Product Managers.pptx
Justin Reock
 
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à GenèveUiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à Genève
UiPathCommunity
 
Ad

MySQL At Mastercard - 2018 MySQL Days

  • 1. James Sturrock, Operations Manager February 15, 2018 MySQL at Mastercard
  • 2. ©2018Mastercard.ProprietaryandConfidential. 2JANUARY 19, 2018 • We employ over 13,000 people worldwide • One of the most recognizable brands in the world • Our vision is “a World Beyond Cash™“ • Our mission is: Every day, everywhere, we use our technology and expertise to make payments safe, simple and smart About us
  • 3. ©2018Mastercard.ProprietaryandConfidential. 3JANUARY 19, 2018 • James Sturrock • Operations Manager • With Mastercard for over 7 years • Part of the Payment Gateway Services division Who am I?
  • 4. ©2018Mastercard.ProprietaryandConfidential. 4JANUARY 19, 2018 • Our Payment Gateways processes financial transitions for merchants globally, across a variety of sectors such as: – Ecommerce – major online brands – Airlines – Cardholder Present – pub and restaurant chains, high-street stores etc • We bridge the gap between your bank authorizing a payment and the merchant receiving the funds • Due to the nature of our business, operationally we must focus on maintaining three key objectives: 1.  Security – we handle peoples personal data as well as cardholder data 2.  Stability – huge financial and reputational cost to merchants if people can’t buy things 3.  Scalability – we need to ensure we can always cope with unexpected surges in traffic (Black Friday, Sporting Events etc) What we do
  • 5. ©2018Mastercard.ProprietaryandConfidential. 5JANUARY 19, 2018 • MySQL was a good fit for our Linux environment and open source approach • Flexibility to use it in whatever way you need to • Stability, MySQL is almost never the problem! • Simplicity, MySQL can be used as simply or complex as you want Why MySQL
  • 6. ©2018Mastercard.ProprietaryandConfidential. 6JANUARY 19, 2018 – Enterprise Monitor – Enterprise Authentication – Enterprise Scalability • These are all products which we are now using or evaluating! ensure that 3rd party vendor releases patches for security vulnerabilities in a timely manner. This can’t be guaranteed from the open source community. • Traditionally we have failed to take advantage of the full suite of Enterprise tools such as: – Enterprise Monitor – Enterprise Authentication – Enterprise Scalability • These are all products which we are now using or evaluating! Why MySQL Enterprise
  • 7. ©2018Mastercard.ProprietaryandConfidential. 7JANUARY 19, 2018 • Around 40 servers running MySQL • Anywhere between 1 and 12 running instances of MySQL on a single machine • Vast majority are running MySQL Enterprise Edition • All running on Red Hat Enterprise Linux (64 bit) General Overview Hardware Presentation Operating System Database
  • 8. ©2018Mastercard.ProprietaryandConfidential. 8JANUARY 19, 2018 • We use MySQL Enterprise Monitor along with some legacy in house log monitoring tools • Nagios is used for system level monitoring as well as basic MySQL checks (such as are instances running, is replication stalled, how far behind is replication) • Grafana used for monitoring “user experience” of the platform, often the best indicator if there is an actual problem Monitoring
  • 9. ©2018Mastercard.ProprietaryandConfidential. 9JANUARY 19, 2018 • Classic “upside down tree” replication chain, A single read/ write master replicates down the chain one by one • Having too many slaves replicating off one master can slow down the master! • When carrying out a failover, there is much less remastering to be done • Allows for us to carry out major schema upgrades on all slaves then failover with no downtime Replication Host 1 Host 2 Host 3 Host 4 Host X
  • 10. ©2018Mastercard.ProprietaryandConfidential. 10JANUARY 19, 2018 • Our replication structure and database design doesn’t give us high availability out of the box, there is still a single read/write master • Red Hat Cluster Suite layered on top of MySQL to provide automated failure detection and failover • Built in clustering and quorum functionality • Essentially manages a VIP and ensures it is running on the correct host • Custom health checks are run by the cluster software to determine if a MySQL instance or the entire host has crashed High Availability
  • 11. ©2018Mastercard.ProprietaryandConfidential. 11JANUARY 19, 2018 • Replication lag during peak processing periods – Potentially could be fixed by parallel replication • Cumbersome process to isolate databases for Kernel patching – Potentially could be fixed by using GTID replication – Potentially could be fixed by using tools like salt/fabric to automate • Length of time for a cold started database to become “hot” and fast enough to use – Potentially could be fixed by migrating to InnoDB Current Challenges…
  • 12. ©2018Mastercard.ProprietaryandConfidential. 12JANUARY 19, 2018 • Compliance considerations: – MySQL 8? – RHEL 7? • Performance/usability improvements: – Implement GTID replication – Test parallel replication • Tighter integration of MySQL into our “DevOps” toolkit – Puppet – Fabric/salt The Future…..
  • 13. ©2018Mastercard.ProprietaryandConfidential. 13JANUARY 19, 2018 • Use SSD disks where possible! • Always test schema changes on a dataset equivalent to production (and test the rollback as well as the rollout) • You can never have too many monitoring metrics across your platform • Having a production like stress test environment is invaluable • Historically MySQL has not been the problem, hardware and software bottlenecks are more common • Disconnect database connections when reaching out to 3rd party services (avoids rapidly reaching the max_connection limit) Lessons Learned…
  翻译: