函数 - dm_execution_performance_counters

适用范围:SQL Server Azure 数据工厂中的 SSIS Integration Runtime

返回正在 Integration Services 服务器上运行的执行的性能统计信息。

语法

dm_execution_performance_counters [ @execution_id = ] execution_id  
  

参数

[ @execution_id = ] execution_id
包含一个或多个包的执行的唯一标识符。 通过“执行包”任务执行的包在同一个执行中作为父包运行。

如果未指定执行 ID,则返回多个执行的性能统计信息。 如果你是 ssis_admin 数据库角色的成员,将返回所有正在运行的执行的性能统计信息。 如果你不是 ssis_admin 数据库角色的成员,则返回你对其具有读权限的正在运行的执行的性能统计信息。 execution_idBigInt

备注

下表列出了由 dm_execution_performance_counter 函数返回的计数器名称值。

计数器名称 说明
BLOB bytes read 数据流引擎从所有源中读取的二进制大型对象 (BLOB) 数据的字节数。
BLOB bytes written 数据流引擎写入所有目标的 BLOB 数据的字节数。
BLOB files in use 数据流引擎正用于假脱机的 BLOB 文件数。
Buffer memory Integration Services 缓冲区使用的内存量,包括物理内存和虚拟内存。
Buffers in use 数据流组件和数据流引擎正在使用的各种类型的缓冲区对象的数量。
Buffers Spooled 写入磁盘的缓冲区的数量。
Flat buffer memory 所有平面缓冲区使用的内存量(以字节为单位)。 平面缓冲区是组件用于存储数据的内存块。
Flat buffers in use 数据流引擎使用的平面缓冲区的数量。 所有平面缓冲区都是专用缓冲区。
Private buffer memory 所有专用缓冲区所使用的内存量。 专用缓冲区是指转换用于临时工作的缓冲区。

如果数据流引擎创建的是一个支持数据流的缓冲区,则该缓冲区不是专用缓冲区。
Private buffers in use 转换用于临时工作的缓冲区的数量。
Rows read 执行读取的总行数。
Rows written 执行写入的总行数。

返回

dm_execution_performance_counters 函数为正在运行的执行返回包含以下列的表。 返回的信息用于执行中包含的所有包。 如果没有正在运行的执行,则返回空表。

列名 列类型 说明 备注
execution_id BigInt

NULL 不是有效值。
包含包的执行的唯一标识符。
counter_name nvarchar(128) 计数器的名称。 请参阅值的备注部分。
counter_value BigInt 计数器所返回的值。

示例

A. 返回正在运行的执行的统计信息

在下面的示例中,该函数将返回 ID 为 34 的正在运行的执行的统计信息。

select * from [catalog].[dm_execution_performance_counters] (34)  

B. 返回所有正在运行的执行的统计信息

在下面的示例中,该函数返回正在 Integration Services 服务器上运行的所有执行的统计信息,具体取决于您的权限。

select * from [catalog].[dm_execution_performance_counters] (NULL)  
  

权限

此函数需要下列权限之一:

  • 针对执行实例的 READ 和 MODIFY 权限

  • ssis_admin 数据库角色的成员资格

  • sysadmin 服务器角色的成员资格

错误和警告

下表说明了导致函数失败的情况。

  • 用户对指定的执行没有 MODIFY 权限。

  • 指定的执行 ID 无效。