Home > Articles > Data > SQL Server

  • Print
  • + Share This
Like this article? We recommend

Like this article? We recommend

Monitoring Backups, DDL Statements, and Synchronization Events

Replaying Traces for Load Testing

SSAS doesn't provide a multitude of options for load testing. One option is to use the ascmd.exe tool and submit queries serially or in parallel on multiple connections. Profiler provides another alternative, by allowing you to replay a previously captured trace, as long as the trace includes necessary events and columns. Profiler provides a replay template that includes all events and columns necessary for capturing a replay trace. Clearly you don't want to replay every event (for example, "delete database"), so Profiler prevents you from shooting yourself in the foot.

We could capture a trace for replay, using an XMLA trace definition, but we must use the Profiler interface for running a replay—sadly, no way exists to replay traces programmatically. As Figure 6 shows, the replay dialog box is somewhat confusing when you try replaying the trace events in parallel.

You have the option of specifying the number of threads, replaying events in the order they were traced, or replaying events using multiple threads. What isn't obvious is that the number of replay threads is relevant only when you're replaying using multiple threads. If you replay events in the order they were traced, only one query will be submitted to the target SSAS instance, regardless of the value you specify for the Number of Replay Threads setting. So the first option is most useful for debugging specific errors you might have encountered, while the option of replaying events on multiple threads is better suited for load testing.

In case you're curious, the Advanced Replay Options tab allows you to set the start and end times within the replay trace if you don't want to replay every event included in the trace file.

  • + Share This
  • 🔖 Save To Your Account