sys.dm_exec_external_work (Transact-SQL)

适用于:SQL Server 2016 (13.x) 及更高版本

返回有关每个计算节点上每个辅助角色的工作负荷的信息。

用于识别启动以与外部数据源通信 ((例如 Hadoop 或 MongoDB) )的查询 sys.dm_exec_external_work

列名 数据类型 说明 范围
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 实际拆分的 ID。 大于或等于 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) 发送到外部数据源的查询。 在 2019 SQL Server (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) 返回 0 Windows 和 Linux 上的SQL Server。

备注

从 2019 SQL Server (15.x) 开始,可以使用 sys.dm_exec_external_work 查看在 PolyBase 下推计算中传递给外部数据源的远程查询。 有关详细信息,请参阅如何判断是否发生了外部下推

另请参阅

使用动态管理视图进行 PolyBase 故障排除
动态管理视图和函数 (Transact-SQL)
与数据库有关的动态管理视图 (Transact-SQL)