sys.dm_exec_external_work (Transact-SQL)
適用於: SQL Server 2016 (13.x) 和更新版本
傳回每個計算節點上每個背景工作角色之工作負載的相關信息。
查詢 sys.dm_exec_external_work
以識別工作啟動以與外部數據源通訊(例如 Hadoop 或 MongoDB)。
資料行名稱 | 資料類型 | 描述 | 範圍 |
---|---|---|---|
execution_id | nvarchar(32) |
相關聯 PolyBase 查詢的唯一標識碼。 | 請參閱 sys.dm_exec_requests (Transact-SQL) 中的request_ID。 |
step_index | int |
此背景工作角色正在執行的要求。 | 請參閱 sys.dm_exec_requests (Transact-SQL) 中的step_index。 |
dms_step_index | int |
此背景工作角色正在執行的 DMS 方案中的步驟。 | 請參閱 sys.dm_exec_dms_workers (Transact-SQL) 。 |
compute_node_id | int |
背景工作角色正在執行的節點。 | 請參閱 sys.dm_exec_compute_nodes (Transact-SQL) 。 |
type | nvarchar(60) |
外部工作的類型。 | 「檔案分割」(適用於 Hadoop 和 Azure 記憶體) 'ODBC 資料分割' (適用於其他外部數據源) |
work_id | int |
實際分割的標識碼。 | 大於或等於 0。 |
input_name | nvarchar(4000) |
要讀取的輸入名稱 | 使用Hadoop或 Azure 記憶體時的檔名(含路徑)。 對於其他外部數據源,它是外部數據源位置和外部數據表位置的串連: scheme://DataSourceHostname[:port]/[DatabaseName.][SchemaName.]TableName |
read_location | bigint |
讀取位置的位移。 | 0 表示檔案中的位元組數目減 1。NULL 適用於非 Hadoop 或非 Azure 記憶體。 |
read_command | nvarchar(4000) |
傳送至外部數據源的查詢。 在 SQL Server 2019 (15.x) 中引進。 | 代表查詢的文字。 針對 Hadoop 和 Azure 記憶體,會傳 NULL 回 。 |
bytes_processed | bigint |
配置給此背景工作角色處理數據的位元組總數。 此值不一定代表查詢所傳回的總數據 | 大於或等於 0。 |
length | bigint |
Hadoop 的分割長度或 HDFS 區塊 | 用戶可定義。 預設值為 64M |
status | nvarchar(32) |
背景工作角色的狀態 | 暫止、處理、完成、失敗、中止 |
start_time | datetime |
工作開始 | |
end_time | datetime |
工作結束 | |
total_elapsed_time | int |
以毫秒為單位的總時間 | |
compute_pool_id | int |
背景工作角色執行所在集區的唯一標識符。 僅適用於 SQL Server 巨量數據叢集。 請參閱 sys.dm_exec_compute_pools (Transact-SQL) 。 | 針對 Windows 和 Linux 上的 SQL Server 傳 0 回 。 |
備註
從 SQL Server 2019 (15.x)開始,您可以使用 sys.dm_exec_external_work
來檢視在 PolyBase 下推計算中傳遞至外部數據源的遠端查詢。 如需詳細資訊,請參閱如何判斷是否發生外部下推。
另請參閱
使用動態管理檢視進行 PolyBase 疑難排解
動態管理檢視和函數 (Transact-SQL)
資料庫相關的動態管理檢視 (Transact-SQL)