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) |
資料流程元件的名稱。 |
階段 |
nvarchar(128) |
執行階段的名稱。 |
start_time |
datetimeoffset(7) |
階段開始的時間。 |
end_time |
datetimeoffset(7) |
階段結束的時間。 |
execution_path |
nvarchar(max) |
資料流程工作的執行路徑。 |
備註
此檢視針對資料流程元件的每個執行階段,各顯示一個資料列,例如:Validate、Pre-Execute、Post-Execute、PrimeOutput 和 ProcessInput。 每個資料列都會顯示特定執行階段的開始和結束的時間。
範例
下列範例會查詢 catalog.execution_component_phases 檢視,以計算資料流程工作中的每個元件於執行指定的封裝 (執行識別碼 = 1841) 期間的啟用時間和總時間。 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 伺服器角色成員資格
[!附註]
當您擁有在伺服器上執行操作的權限時,也會具有檢視作業資訊的權限。 強制使用資料列層級安全性,只會顯示您具有檢視權限的資料列。