SSIS 2012 - 包任务 运行 时间状态

SSIS 2012 - Package Task Run Time Status

在 Table [catalog].[execution_component_phases] 中有一列名为 阶段。相位列的值为:

有人可以建议哪个值表示特定任务吗 包裹处于 运行 状态。

是否有任何值表明任务已开始但尚未完成。

此致

基于[catalog].[execution_component_phases]table的官方文档:

Displays the time spent by a data flow component in each execution phase.

This view displays a row for each execution phase of a data flow component, such as Validate, Pre-Execute, Post-Execute, PrimeOutput, and ProcessInput. Each row displays the start and end time for a specific execution phase.

根据我的经验,我可以假设执行阶段的顺序是:

  1. AcquireConnection : 获取所需的相关连接
  2. 验证:正在验证 Task/Component
  3. 预执行
  4. ProcessInput : 处理阶段
  5. PrimeOutput : 生成输出
  6. Post-执行
  7. ReleaseConnection : 释放获取的连接

在官方文档中,他们提供了以下查询来读取每个阶段花费的时间:

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

根据以上信息,您可以-例如-检查当前任务阶段是否仍然运行。

参考资料