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 ...