Something about SSIS Performance Counters

SQL Server Integration Services provide a set of performance counters. Among them the following few are helpful when you tune or debug your package:

  • Buffers in use

  • Flat buffers in use

  • Private buffers in use

  • Buffers spooled

  • Rows read

  • Rows written


“Buffers in use”, “Flat buffers in use” and “Private buffers in use” are useful to discover leaks. During package execution time, you will see these counters fluctuating. But once the package finishes execution, their values should return to the same value as what they were before the execution. Otherwise, buffers are leaked. In occasions like that, please contact Microsoft PSS.


“Buffers spooled” has an initial value of 0. When it goes above 0, it indicates that the engine has started memory swapping. In a case like that, please follow my previous blog (“Set BLOBTempStoragePath and BufferTempStoragePath to Fast Drives”) to set Data Flow Task properties BLOBTempStoragePath and BufferTempStoragePath appropriately for maximal I/O bandwidth.


“Rows read” and “Rows written” show how many rows the entire Data Flow has processed. They give you an overall idea about the execution progress.


-          Runying Mao

Comments (5)

  1. Runying Mao and Len Wyatt did a great study of SSIS performance, and posted some results: Getting Optimal

  2. Top 10 Lists says:

    Authors: Thomas Kejser, Denny Lee Contributors: Runying Mao Technical Reviewers: Burzin Patel, Kevin

  3. Sanjay Nayyar says:

    Great information and really to the point.  Was really helpfull.

  4. Pranshu says:

    Nice information. It would really help, if u can be more declarative.

  5. johan says:

    the url (“Set BLOBTempStoragePath and BufferTempStoragePath to Fast Drives”) does not work

Skip to main content