Meet the MySQL Expert: Jay Janssen

The Percona Live MySQL Conference and Expo this April 22-25 in Santa Clara, Calif. is the most efficient way for members of the MySQL community to interact and grow. Attendees get to meet and hear from some of the best experts in the industry, such as Percona principal consultant Jay Janssen.

As one of the leading experts in MySQL high-availability architectures, Jay will be leading two sessions specializing in this mission-critical area. With more than decade of MySQL experience, most notably seven years at Yahoo, he specializes in Percona XtraDB Cluster and tweets at @jayjanssen. Percona community manager Tom Diederich recently had the opportunity to sit down with Jay and talk about the upcoming event.

Tom: Jay, 10 years is a long time, especially in technology. What’s changed in terms of how companies are using high-availability MySQL architectures – what can they do now that wasn’t possible a decade ago?

Jay: 10 years ago people were just starting to explore standard MySQL replication and how it could be used for HA. During my time at Yahoo! I did a lot of work standardizing replication-based HA solutions for use across the entire company. Once I really understood the limitations of standard replication, there was this list of limitations that I’ve repeated more times than I care to mention. How to repoint slaves away from down masters, dealing with data drift and slave inconsistencies, slave lag, etc.

Today we’re really spoiled for choice. Standard replication got us started, but it really taught a lot of people about how much further there was to go. I’m really excited to see the improvements in stock replication in 5.6, but I’m equally excited to see more and more acceptance for alternative replication technologies like Galera, Tungsten and the like.

Tom: What’s the most noteworthy “big thing” on the horizon in this area?

Jay: Well, I’m biased, but to me Percona XtraDB Cluster (and Galera) feels to me a lot like it was in the early days of replication. It’s really starting to gain widespread acceptance across the community. We’re still wrapping our heads around what it’s good and what the limitations are, but I see enormous potential for it. I’m most excited about technology in this area that can start solving problems at a generic level for a wide range of MySQL users.

Tom: One of your sessions at April’s event is titled “Migrating to Percona XtraDB Cluster.” A lot of people are interested in XtraDB Cluster as a replacement for conventional MySQL master/slave architectures. At a high level, what’s involved in such a migration and why should organizations consider such a move? What’s the upside? And what are the risks?

Jay: The main benefits of PXC (as I see them) are:

  • you stop caring about your replication topology, and the effects of a node failure on it
  • you don’t have to clone any slaves again, the cluster deals with that
  • single node failure no longer means you likely lost some transactions
  • you can, at least in principle, read and write on any node in an effectively consistent way with the lowest possible performance penalty for cross-node writing conflicts you really can imagine (1 packet RTT).
  • still use conventional replication into or out of any node in the cluster

However, it’s easy to get excited by all of that and to forget how unlike conventional replication it is. Once you start to architect a synchronous-like solution enforcing ACID transactional properties it becomes a completely different beast.

For example, Galera isn’t two-phase commit which means there are possibilities for replication conflicts. How do you detect and deal with those? The proper way is to notify the client and refuse to commit, but the app has to deal with that. With traditional replication it is the DBA who has to deal with replication conflicts (usually manually, at 2AM).

Beyond that, PXC is a CLUSTER it a much stricter sense of the word than a Master and few slaves in a conventional replication setup can be called the same. True clusters tend to be affected by negative performance anywhere in the system; any node with issues can trigger cluster-wide problems. There’s ways to deal with this in PXC, but it’s a much different beast than Master/Slave and some early adopting folks have found that out the hard way.

People need to understand that those differences can and will have an impact on their workloads. Some things that conventional replication lets you get away with really won’t fly once you flip the synchronous switch.

So, we (at Percona) really recommend a lot of stringent testing on PXC before going live. We do a lot of the same things we’d recommend for a typical major MySQL version upgrade: checking for performance regressions, load testing, gradual introduction to production workload (cluster as a slave), etc.

Also, operations on a PXC cluster is really quite different too. People really should plan for a lot of training and experimentation with a test cluster to work out the operational aspects of PXC before going live.

So, a PXC migration can look a lot like any other migration, but we really try to emphasize that the proper care and handling is needed and this is not typically a drop-in replacement for Master/Slave.

Tom: In terms of the overall event this April, what’s the most exciting element for you – what are you most looking forward to at Percona Live?

Jay: I really look forward to the chance to teach and be taught. I’ve spent months on my PXC tutorial and I’m really looking forward to delivering it in a 6 hour format and bringing a new batch of folks into the Galera world.

I’ve always found the best part of conferences is finding people who really understand their topic and can teach it with truly practical real-world application. Granted, Facebook’s environment isn’t real-world for most us, but that’s what makes it great. Regardless of the environment, good teaching applies to everyone. I strive for that in my teaching, and I look for new and old teachers at every conference.

Tom: As you know, Percona Live doesn’t just feature Percona experts – we’ll have speakers from several leading companies, including Twitter, Facebook, Amazon, Nokia, MariaDB, SkySQL… the list goes on and on. Who are your “top 3 must-see” speakers – and why?

Jay: Hmm, this is a hard question. If I were recommending talks based only on the speaker (and outside Percona), I’d come up with at least a dozen. Here’s a few picks:

  • Domas Mituzas (Facebook): Domas is the kind of guy who tells it like it is, and isn’t swayed by fluff.
  • Monty Widenius (Monty Program Ab ): Monty is the man who started it all. Be prepared to taste something strong when attending one of his talks.
  • Henrik Ingo (Nokia): Henrik is an outspoken member of the MySQL community particularly in the HA space (and a big Galera proponent).

Tom: What’s your advice to beginner/intermediate MySQL users and DBAs who will be there? And what should they focus on in addition to the main sessions? What advice do you have for them?

Jay: First of all, pay attention to the level of each talk. Beginners may want to stick with Beginner/Intermediate talks on the topics they’re interested in, but don’t be afraid of some Advanced ones.

As part of the conference selection committee, one of my goals was to ensure there was a good selection of beginner/intermediate talks that cover most every major MySQL topic you should be aware of. I’d pay special attention to the ‘Developing Applications’, ‘Database Administration’ and ‘Tools’ tracks.

Tom: Jay, it’s been a pleasure. If any of the readers out there want to get in touch with you before, during or after the event, what’s the best way? Twitter? Our blog? The Percona discussion forums? Or perhaps old-fashioned email?

Jay: I always tweet from @jayjanssen during the conference under the #perconalive hashtag, so that’s a good way to reach me. I’m open to connecting to chat during breaks or at lunch.

Tom: Sounds good to me! Thanks again and see you in April!

The Percona Live MySQL Conference and Expo is the premiere event for the rich and diverse MySQL ecosystem. As the world's most popular open-source database, MySQL powers web-scale applications such as Facebook, YouTube and Twitter.

MySQL continues to evolve rapidly -- reaching more markets and powering more applications every day – and the Percona Live MySQL Conference and Expo is the place to be for the open-source community, as well as the business marketplace within which MySQL thrives. Register now!