Our team wants to focus on helping our customers meet their health and fitness goals, not the database servers.
Chris Karper is the Engineering Director at MyFitnessPal where he manages a team of DevOps experts. He’s been instrumental in configuring their backend infrastructure. Before PlanetScale, MyFitnessPal transitioned from using MySQL servers to clustered Percona servers. As their data size grew, it became increasingly difficult to do maintenance on any single server. At a certain point, Chris had 3 to 4 full-time staff working with the database, the data structure, and managing the servers themselves.
As a cloud-centric company, MyFitnessPal moved to Amazon RDS. As many are, they were sold on the idea that this would solve their problem of maintaining the server components. They hired AWS professional services but were disappointed with the support they received from it. To add to this, it was not possible to make changes with zero downtime with RDS, leading to fear and avoidance of doing schema migrations.
This is where MyFitnessPal signed on with PlanetScale. Under PlanetScale, the fear to make schema changes disappeared. It enabled Chris’s team to focus on “helping their customers meet their health and fitness goals, not the database servers.”
Databases are hard. We would rather PlanetScale manage them.”
MyFitnessPal found out about PlanetScale through their familiarity with Vitess, the open-source technology that has scaled the world’s largest applications. Chris was originally intrigued by Vitess’s distributed model, which enables MySQL to be more scalable.
Databases are hard. We would rather PlanetScale manage them. We wanted the support PlanetScale offers because they are the experts in the field. We’ve seen this come to fruition in our relationship.
PlanetScale is the MySQL-compatible, serverless database platform built on Vitess. Chris stated that he wants PlanetScale and Vitess to bring to MyFitnessPal “what Kubernetes brought to application delivery and deployment.” With PlanetScale’s patented database branches, their engineers can deploy database schema like they do code, deliver it live, and PlanetScale handles the transition seamlessly. MyFitnessPal are PlanetScale Managed customers: “Databases are hard. We would rather PlanetScale manage them. We wanted the support PlanetScale offers because they are the experts in the field. We’ve seen this come to fruition in our relationship.”
Chris recounts numerous instances where they’ve pinged PlanetScale and received a rapid response to their support tickets. During one particular instance, there was a service that failed to reconnect to the database. MyFitnessPal’s team and PlanetScale worked on discovering the root cause for a few hours. Once their internal team stopped, PlanetScale kept working to discover and solve the problem.
This is more valuable than any feature. It’s a people thing.
Since switching from Amazon RDS to PlanetScale, MyFitnessPal has enjoyed using query Insights. Observability is central to what MyFitnessPal does. Insights has enabled them to understand what’s happening in a distributed architecture. Insights gives MyFitnessPal the confidence to verify and check query performance. Chris specifically enjoys PlanetScale’s ability to capture 100% of queries on a running system as opposed to random query sampling:
Having Insights where it captures 100% of queries scratches an itch like nothing else can. You can get the complete picture.
Possessing insight into every single query as opposed to a random subset has made it incredibly easier for MyFitnessPal to discover areas of optimization.
On top of Insights, Chris is exceptionally excited about making use of Connect. With Connect, MyFitnessPal will be able to stream real-time data. This will transform their current process from batch updates to a real-time environment for BI and other analytics use cases. They’re actively building out a new data strategy around this feature.