A number of performance counters relating to the monitoring of SQL Server contain incremental data. These counters are reset when SQL Server restarts, and increase in value throughout the ongoing operation of the SQL Server service. These counters include wait stats, latch stats and query execution stats etc.
While an incremental value provides a total since SQL Server starting, this is not particularly useful for understanding how SQL Server is being used and impacted over a specific time period. Therefore within RockSolid, our focus is on determining the difference in a given counter between two time periods, then normalising those time periods so the values can be compared.
Most monitoring in RockSolid are captured periodically on each polling cycle. Once an incremental counter is captured, RockSolid will calculate the change in that incremental counter since that last polling cycle. This gives us the difference in value between the two periods. However as polling cycles may vary in length, the value may not be directly comparable to prior values which may show the difference in counter over a greater or shorter length in time. So instead RockSolid will divide the difference by the number of minutes between the two polling cycles to normalise the value.
|Capture Time||Original Value||Time Difference||Normalised Value (value per min)|
This treatment of the counter provides a an average change in counter per minute, allowing measurement of the activity at any point in time and also allows direct comparison of values captured.