Skip to content

Latest commit

 

History

History
80 lines (59 loc) · 6.99 KB

File metadata and controls

80 lines (59 loc) · 6.99 KB
title SQL Server Distributed Replay | Microsoft Docs
ms.custom
ms.date 03/14/2017
ms.prod sql
ms.prod_service sql-tools
ms.component distributed-replay
ms.reviewer
ms.suite sql
ms.technology
database-engine
ms.tgt_pltfrm
ms.topic conceptual
helpviewer_keywords
Distributed Replay
SQL Server Distributed Replay
ms.assetid 58ef7016-b105-42c2-90a0-364f411849a4
caps.latest.revision 25
author stevestein
ms.author sstein
manager craigg

SQL Server Distributed Replay

[!INCLUDEappliesto-ss-xxxx-xxxx-xxx-md] The [!INCLUDEmsCoName] [!INCLUDEssNoVersion] Distributed Replay feature helps you assess the impact of future [!INCLUDEssNoVersion] upgrades. You can also use it to help assess the impact of hardware and operating system upgrades, and [!INCLUDEssNoVersion] tuning.

Benefits of Distributed Replay

Similar to [!INCLUDEssSqlProfiler], you can use Distributed Replay to replay a captured trace against an upgraded test environment. Unlike [!INCLUDEssSqlProfiler], Distributed Replay is not limited to replaying the workload from a single computer.

Distributed Replay offers a more scalable solution than [!INCLUDEssSqlProfiler]. With Distributed Replay, you can replay a workload from multiple computers and better simulate a mission-critical workload.

The [!INCLUDEmsCoName] [!INCLUDEssNoVersion] Distributed Replay feature can use multiple computers to replay trace data and simulate a mission-critical workload. Use Distributed Replay for application compatibility testing, performance testing, or capacity planning.

When to Use Distributed Replay

[!INCLUDEssSqlProfiler] and Distributed Replay provide some overlap in functionality.

You may use [!INCLUDEssSqlProfiler] to replay a captured trace against an upgraded test environment. You can also analyze the replay results to look for potential functional and performance incompatibilities. However, [!INCLUDEssSqlProfiler] can only replay a workload from a single computer. When replaying an intensive OLTP application that has many active concurrent connections or high throughput, [!INCLUDEssSqlProfiler] can become a resource bottleneck.

Distributed Replay offers a more scalable solution than [!INCLUDEssSqlProfiler]. Use Distributed Replay to replay a workload from multiple computers and better simulate a mission-critical workload.

The following table describes when to use each tool.

Tool Use When…
[!INCLUDEssSqlProfiler] You want to use the conventional replay mechanism on a single computer. In particular, you need line-by-line debugging capabilities, such as the Step, Run to Cursor, and Toggle Breakpoint commands.

You want to replay an [!INCLUDEssASnoversion] trace.
Distributed Replay You want to evaluate application compatibility. For example, you want to test [!INCLUDEssNoVersion] and operating system upgrade scenarios, hardware upgrades, or index tuning.

The concurrency in the captured trace is so high that a single replay client cannot sufficiently simulate it.

Distributed Replay Concepts

The following components make up the Distributed Replay environment:

  • Distributed Replay administration tool: A console application, DReplay.exe, used to communicate with the distributed replay controller. Use the administration tool to control the distributed replay.

  • Distributed Replay controller: A computer running the Windows service named [!INCLUDEssNoVersion] Distributed Replay controller. The Distributed Replay controller orchestrates the actions of the distributed replay clients. There can only be one controller instance in each Distributed Replay environment.

  • Distributed Replay clients: One or more computers (physical or virtual) running the Windows service named [!INCLUDEssNoVersion] Distributed Replay client. The Distributed Replay clients work together to simulate workloads against an instance of [!INCLUDEssNoVersion]. There can be one or more clients in each Distributed Replay environment.

  • Target server: An instance of [!INCLUDEssNoVersion] that the Distributed Replay clients can use to replay trace data. We recommend that the target server be located in a test environment.

The Distributed Replay administration tool, controller, and client can be installed on different computers or the same computer. There can be only one instance of the Distributed Replay controller or client service that is running on the same computer.

The following figure shows the [!INCLUDEssNoVersion] Distributed Replay physical architecture:

Distributed Replay Architecture

Distributed Replay Tasks

Task Description Topic
Describes how to configure Distributed Replay. Configure Distributed Replay
Describes how to prepare the input trace data. Prepare the Input Trace Data
Describes how to replay trace data. Replay Trace Data
Describes how to review the Distributed Replay trace data results. Review the Replay Results
Describes how to use the administration tool to initiate, monitor, and cancel operations on the controller. Administration Tool Command-line Options (Distributed Replay Utility)

See Also

SQL Server Distributed Replay Forum
Using Distributed Replay to Load Test Your SQL Server – Part 2
Using Distributed Replay to Load Test Your SQL Server - Part 1