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.


MySQL Database Engineer, Facebook
Evan is a Database Engineer on Facebook's MySQL Operations team, where he writes automation software supporting the world's largest MySQL installation. Prior to Facebook, Evan was one of Tumblr's first engineers, where he led the Database Engineering team and scaled the site's MySQL backend. He is the creator of Jetpants, an open-source sharding and database management toolkit. Evan previously worked at Six Apart and Harvard University, and has been developing online software since the days of dial-up bulletin board systems.
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.