Global Transaction ID at Facebook

Replication and High Availability Strategies
4 April 12:50PM - 1:40PM @ Ballroom E

Experience level: 
50 minutes conference
Global Transaction ID (GTID) is one of the most compelling new features of MySQL 5.6. It is also one of the trickiest to deploy to an existing large-scale environment. This talk will cover every aspect of how and why we adopted GTID at Facebook, including: * Benefits and use-cases * Comparison of different GTID implementations * A failover technique to easily replay missing transactions on replicas * Combining GTID with semi-synchronous replication * Changes we made to Facebook's version of the MySQL Server to simplify deployment, fix crash-safety, improve slave reconnection performance, and more * Operational rollout and automation across many thousands of MySQL instances This session is geared towards DBAs and database engineers. Attendees will gain a full understanding of how GTID works, why it's beneficial, and how to deploy it at any scale.


Director of Engineering, Tumblr
Evan is a software engineer and database automation expert based in New York City. He was originally engineer #4 at Tumblr, where he recently returned to direct several backend engineering teams. Previously he was a member of Facebook's MySQL Infrastructure team, where he deployed GTID to the world's largest MySQL fleet, and led development of the company's internal DBaaS platform. He has been using MySQL since 2003, and is the creator of two open source tools: Jetpants, a shard orchestration toolkit; and Skeema, a schema management system.
Software Engineer, Facebook
Santosh is a software engineer at Facebook working on improving MySQL. He improved multiple replication features like Global Transaction Identifiers, Multi-threaded slave and Semi-sync so they work at Facebook scale efficiently. Before joining Facebook, he graduated from Indian Institute of Technology.
Database Engineer, Facebook
Yoshinori is a database engineer at Facebook. Before joining Facebook, Yoshinori was a database and infrastructure architect at DeNA, living in Tokyo. Yoshinori's primary responsibility at DeNA is to make our database infrastructure more reliable, faster and more scalable. Before joining DeNA, Yoshinori worked at MySQL/Sun/Oracle as a lead consultant in APAC for four years. Yoshinori has written eight MySQL related technical books so far and has published technical articles about MySQL, Linux, and Java for a monthly database magazine since 2004.