Slack is embarking on a major migration of the mysql infrastructure at the core of our service to use Vitess' flexible sharding and management instead of our simple application-based shard routing and manual administration. This effort is driven by the need for an architecture that scales to meet the growing demands of our largest customers and features under the pressure to maintain a stable and performant service that executes billions of MySQL transactions per hour. This talk will present the driving motivations behind the change, why Vitess won out as the best option, and how we went about laying the groundwork for the switch. Finally, we will discuss some challenges and surprises (both good and bad) found during our initial migration efforts, and suggest some ways in which the Vitess ecosystem can improve that will aid future migration efforts.
Mike is a Senior Staff Engineer on the Slack Infrastructure team working on hard problems of scalability and reliability and leading the development of Slack's next generation database architecture. Previously, he was co-founder and CTO of Jut -- a startup applying a new dataflow language to observability for developers and operations engineers. Prior to that, he was at Riverbed where he was part of the founding development team for the Steelhead WAN accelerator and later led the Pilot/Shark team building network analytics products based on the wireshark open source packet capture technology. He has a PhD in Computer Science from UC Berkeley and is passionate about large scale distributed systems and performance.