catalog.execution_component_phases
显示数据流组件在每个执行阶段中所花的时间。
列名 |
数据类型 |
说明 |
---|---|---|
phase_stats_id |
bigint |
阶段的唯一标识符 (ID)。 |
execution_id |
bigint |
执行实例的唯一 ID。 |
package_name |
nvarchar(260) |
在执行过程中启动的第一个包的名称。 |
task_name |
nvarchar(4000) |
数据流任务的名称。 |
subcomponent_name |
nvarchar(4000) |
数据流组件的名称。 |
phase |
nvarchar(128) |
执行阶段的名称。 |
start_time |
datetimeoffset(7) |
阶段开始的时间。 |
end_time |
datetimeoffset(7) |
阶段结束的时间。 |
execution_path |
nvarchar(max) |
数据流任务的执行路径。 |
注释
此视图显示数据流组件的每个执行阶段(如 Validate、Pre-Execute、Post-Execute、PrimeOutput 和 ProcessInput)对应的行。 每行显示特定执行阶段的开始时间和结束时间。
示例
下面的示例针对给定的执行包(执行 ID = 1841)查询 catalog.execution_component_phases 视图,以便计算的数据流任务中各个组件的活动时间和总时间。 Active_time 指特定包或组件在所有阶段花在执行上的总时间。 Total_time 是包和组件使用的总时间。
注意 |
---|
如果包执行的日志记录级别设置为“性能”或“详细”,则 catalog.execution_component_phases 视图将提供此信息。 有关详细信息,请参阅 在 SSIS 服务器上启用包执行的日志记录。 |
use SSISDB
select package_name, task_name, subcomponent_name, execution_path,
SUM(DATEDIFF(ms,start_time,end_time)) as active_time,
DATEDIFF(ms,min(start_time), max(end_time)) as total_time
from catalog.execution_component_phases
where execution_id = 1841
group by package_name, task_name, subcomponent_name, execution_path
order by package_name, task_name, subcomponent_name, execution_path
权限
此视图需要下列权限之一:
针对执行实例的 READ 权限
ssis_admin 数据库角色的成员身份
sysadmin 服务器角色的成员身份
注意 |
---|
当您具有在服务器上执行操作的权限时,您还具有查看有关此操作的信息的权限。 将实施行级安全性;只显示您有权查看的行。 |