sys.dm_os_job_object(Azure SQL 数据库)

适用于: Azure SQL 数据库 Azure SQL 托管实例

返回一行,描述用于管理 SQL Server 进程的作业对象的配置,以及作业对象级别的某些资源消耗统计信息。 如果 SQL Server 未在作业对象中运行,则返回一个空集。

作业对象是一种 Windows 构造,用于在操作系统级别实现 CPU、内存和 IO 资源治理。 有关作业对象的详细信息,请参阅 作业对象

列数 数据类型 描述
cpu_rate int 指定 SQL Server 线程在每个计划间隔期间可以使用的处理器周期部分。 该值报告为 10000 周期计划间隔内可用周期的百分比,乘以逻辑 CPU 数。 例如,具有 8 个逻辑 CPU 的 SQL Server 实例上的值 800 表示线程可以使用 CPU 是其完整容量。
cpu_affinity_mask bigint 一个位掩码,描述 SQL Server 进程可以在处理器组中使用的逻辑处理器。 例如,cpu_affinity_mask 255(二进制中的 1111 1111)表示可以使用前八个逻辑处理器。

此列用于向后兼容性。 它不报告处理器组,当处理器组包含 64 个以上的逻辑处理器时,报告的值可能不正确。 请改用 process_physical_affinity 列来确定处理器相关性。
cpu_affinity_group int SQL Server 使用的处理器组数。
memory_limit_mb bigint 作业对象(包括 SQL Server)中的所有进程都可以累积使用的最大已提交内存量(以 MB 为单位)。
process_memory_limit_mb bigint 作业对象(如 SQL Server)中的单个进程可以使用的最大已提交内存量(以 MB 为单位)。
workingset_limit_mb bigint SQL Server 工作集可以使用的最大内存量(以 MB 为单位)。
non_sos_mem_gap_mb bigint 为线程堆栈、DLL 和其他非 SOS 内存分配预留的内存量(以 MB 为单位)。 SOS 目标内存是和 process_memory_limit_mb non_sos_mem_gap_mb..
low_mem_signal_threshold_mb bigint 内存阈值,以 MB 为单位。 当作业对象的可用内存量低于此阈值时,会将低内存通知信号发送到 SQL Server 进程。
total_user_time bigint 自创建作业对象以来,作业对象中的线程在用户模式下花费的总周期数为 100 n 秒。
total_kernel_time bigint 作业对象中的线程在内核模式下花费的 100 n 秒时钟周期总数,因为作业对象已创建。
write_operation_count bigint 自创建作业对象以来,SQL Server 颁发的本地磁盘上的写入 IO 操作总数。
read_operation_count bigint 自创建作业对象以来,SQL Server 颁发的本地磁盘上的读取 IO 操作总数。
peak_process_memory_used_mb bigint 作业对象(如 SQL Server)中的单个进程自创建作业对象以来使用的内存峰值量(以 MB 为单位)。
peak_job_memory_used_mb bigint 自创建作业对象以来,作业对象中的所有进程累计使用的内存峰值量(以 MB 为单位)。
process_physical_affinity nvarchar(3072) 位掩码,描述 SQL Server 进程可在每个处理器组中使用的逻辑处理器。 此列中的值由一个或多个值对构成,每个值对括在大括号中。 在每个对中,第一个值是处理器组编号,第二个值是该处理器组的关联位掩码。 例如,该值 {{0,a}{1,2}} 表示处理器组 0 的关联掩码为 a1010 在二进制文件中,指示使用处理器 2 和 4),处理器组 1 的关联掩码为 210 在二进制文件中,指示使用处理器 2)。

权限

在SQL 托管实例,需要VIEW SERVER STATE权限。 在 SQL 数据库上,需要在数据库中拥有 VIEW DATABASE STATE 权限。

另请参阅

有关托管实例的信息,请参阅SQL 托管实例