Chapter 3. Benchmarking
We
decided to cover benchmarking very early in this book because
it's a critically important skill. Much of this book
focuses on information and techniques you need to keep MySQL fast or
make it run even faster. You need a good performance testing
framework to judge the difference between one configuration and
another, one query and another, or even one server and another. You
also need a lot of patience and a willingness to experiment. This
chapter can't give you all the answers, but we try
to provide some tools that will help you find them.
If you care about database performance in your applications (and if
you're reading this book, you probably do),
benchmarking needs to become part of your development testing
process. When you're testing an upgrade to MySQL or
some MySQL configuration changes, run the benchmark tests you
developed while building the application. Look at the results. Make
sure they don't surprise you.
This chapter isn't long, but it contains essential
material that we'll refer back to and apply in
future chapters. If you're planning to skip around
in the book, be sure to read this chapter first.
We begin with a look at the importance of benchmarking in database
applications, then continue with a look at benchmarking
strategies—things you need to think about in the planning
process. Finally we get our hands dirty with a look at benchmarking
tools.
We'll build on the strategies and tools presented in
this chapter in those that follow. When considering performance
questions, we'll consider the factors involved and
present a benchmark test that can assist in the decision-making
process. Take some time now to experiment with the tools and examples
presented here. The skills you build now will benefit you in later
chapters and in your own projects.
|