Workload Capture and Replay
In this chapter we're going to review database workload capture and replay. This approach to stress testing or database benchmarking has some fairly obvious advantages. First, it's your application and database from which the transactional activity is derived. Therefore it has a direct correlation and relevance to your actual performance situation and issues at hand. Second, you already are intimately familiar with both the database design and the general business requirements being handled. So there are no specs to read and learn. Third, it's easier to research and propose potential solutions due to this familiarity. Plus it's easy to bounce ideas off of peers who also have such familiarity. For reasons such as these (and several others), some people might well consider this the ideal approach to stress testing or database benchmarking. It's hard to argue against such logic. I see their point. While Chapter 8 may have shown a way to create a mixture of industry-standard benchmarks in an attempt to approximate any system of interest, it nonetheless remains an approximation at best. We could easily forget some aspect that could radically skew the achievable results. You simply cannot be more accurate than running the actual workload.