Do you have a MySQL scalability challenge? Here’s few classic requests I get from customers coming for scalability consulting:
- Number of users keeps increasing and the load average is already going through the roof. Should we do another query optimization round, upgrade MySQL server hardware, or is it time to scale out MySQL?
- Next week we’re launching a campaign that will double the number of users, but looking at MySQL utilization graphs, I don’t think the system will keep up. We are already experiencing occasional query pile-ups.
- We have approached MySQL limits. What do we do now?
Unfortunately, MySQL doesn’t have a single scaling strategy. Which is one of many reasons I find scalable application design, and MySQL scalability in particular so fascinating.
Hi, my name is Aurimas Mikalauskas (, , ). I’ve been first introduced to scalability in 2004, when Brad Fitzpatrick from Danga interactive gave a talk about LiveJournal.com scaling challenges and how they solved them. I was working in a server hosting company at that time, so I had a great opportunity to apply this knowledge, and as a result of our success, I got to work with four largest and fastest growing websites in Lithuania at that time – autoplius.lt, pazintys.lt, klase.lt, supermama.lt.
In December 2006, I have joined Percona (now largest independent MySQL consulting company) as their first full time performance consultant. I’ve spent 9 years there working as a senior consultant, principal consultant and finally as an architect, until I decided it’s time to take a break and start a career as a freelance MySQL consultant.
While at Percona, I have worked with over a hundred of different companies, big and small, and here’s just a few names I can mention:
- Boardreader – I have worked on the search engine, which stores over 5TB of text data searchable in real time
- BBC – I’ve been involved in scaling their central user authentication system
- EngineYard – for few years I’ve been regularly designing and optimizing databases for their fastest growing customers
- Big Fish Games – lots of different performance optimization work
- Groupon – dealing with their MySQL Scalability challenges
I’ve been lucky enough to receive a number of compliments from the customers I worked with over the years. They really motive me as it tells me people find my work valuable, so I would love to share it with you:
For EstanteVirtual CEO André Garcia, the personal relationship with Percona, and Aurimas in particular, is a delight. “I have a dedicated consultant who not only understands my setup, but he understands my business. I have to translate some Portuguese words for him once in a while, but that is part of the fun! Because he knows both where I want to get and what I care for, he knows exactly what I need before I ask! It’s fantastic.”
from Percona white paper “Estante Virtual Leverages Percona for State-of-the-Art Solutions”
Aurimas has been a pleasure to work with.
Justin Bonanno, Consultant at The Bonanno Group Digital Marketing
Aurimas, it was a pleasure to work with an expert and get a better understanding of where we are with our database. I appreciated how thoroughly you were able to analyze our system in such a short time.
Seth Stone, Senior Developer at Pine Cove
Aurimas, <..> also, I wanted to take a moment here to let you know how thrilled I have been with your work over the past year. You have done a really great job understanding my needs and quickly finding solutions to my problems. I have the highest level of confidence in the quality of your work and its a great relief for me to have someone as talented and knowledgeable as you helping me out when issues arrive with my server.
Jeff Cole, founder at jeffcole.org
Just finished a few weeks project with this talented guy. We are so happy with the results of the project. Aurimas perfectly handled every mysql issue we had with patience and kindness. Was worth any penny! Hope to work with him again in the future with a much bigger challenges! For us he is 5 stars, 100% professional.Guy Saar, CTO at FXP.co.il
How does it work
So you’re probably wondering now, if you decide to hire me – how does it work? Well, normally the work is done remotely, most of the time – over ssh, as that’s the most efficient way to do it.
First we get on a call to discuss your situation and how long it may take to have it solved, then I review your server(s) to get a grip on the situation. Most of the time in this phase I am able to identify a number of “low hanging fruits” that allow us to postpone the scalable architecture implementation for another 6-12 months.
Finally, I work with your team to either prepare a proof of concept for the new scalable architecture and work on the actual implementation as much as you need me to.
By the way, if you prefer, the work can also be done onsite. I am based in Vilnius, Lithuania, hence in a 3-4 hour distance from most Europe countries, but I can travel to US, Canada and many other countries on a short notice (availability schedule permitting).
Alternatively, we can use screen sharing tools and video conferencing, if that works better for you.
If you have an interesting scaling challenge that you think I could help you with, let me know: