SQL Server Engine 当前使用的configuration,称作 In-memory configuration,使用DMV:sys.dm_resource_governor_XXX查看;如果需要对Resource Governor Configuration进行更新,需要分两步。

Step1,更新Stored configuration。对Resource Governor组件的update,实际上修改的是Stored Configuration,并没有影响到SQL Server Engine 当前使用的In-Memory configuration。使用系统表sys.resource_governor_XXX查看Stored configuration的详细信息。

step2,更新Configuration,使用 ALTER RESOURCE GOVERNOR RECONFIGURE; 将SQL Server Engine的In-Memory configuration更新为 Stored Configuration,参考ALTER RESOURCE GOVERNOR (Transact-SQL)

一,查看 Resource Governor metadata

1,查看Resource Pool

sys.dm_resource_governor_resource_pools shows the in-memory configuration.To see the stored configuration metadata, use the sys.resource_governor_resource_pools catalog view.

select rgrp.pool_id,
    rgrp.name,
    rgrp.min_cpu_percent,
    rgrp.max_cpu_percent,
    rgrp.cap_cpu_percent,

    rgrp.min_memory_percent,
    rgrp.max_memory_percent,
    rgrp.max_memory_kb,
    rgrp.target_memory_kb
from sys.dm_resource_governor_resource_pools rgrp

cap_cpu_percent: Hard cap on the CPU bandwidth that all requests in the resource pool will receive. Limits the maximum CPU bandwidth level to the specified level.

min_memory_percent:The current configuration for the guaranteed amount of memory for all requests in the resource pool when there is memory contention. This is not shared with other resource pools.

2,查看Workload Group

默认设置,request_max_memory_grant_percent=25,意味着,a single request能够使用的内存是有上限的,不能超过max_request_grant_memory_kb的限制

select rgwg.group_id,
    rgwg.name,
    rgwg.pool_id,
    rgwg.importance,
    rgwg.max_request_cpu_time_ms,
    rgwg.request_max_cpu_time_sec,

    rgwg.request_max_memory_grant_percent,
    rgwg.max_request_grant_memory_kb,

    rgwg.group_max_requests,
    rgwg.max_dop
from sys.dm_resource_governor_workload_groups rgwg

max_request_cpu_time_ms: Maximum CPU usage, in milliseconds, for a single request.This is a measured value, unlike request_max_cpu_time_sec, which is a configurable setting.

request_max_cpu_time_sec: Maximum CPU use limit, in seconds, for a single request.

request_max_memory_grant_percent: Maximum memory grant, as a percentage, for a single request.

max_request_grant_memory_kb: Maximum memory grant size, in kilobytes, of a single request since the statistics were reset.

group_max_requests: Maximum number of concurrent requests.

max_dop: Maximum degree of parallelism for the workload group. The default value, 0, uses global settings. Is not nullable.

importance: Current value for the relative importance of a request in this workload group. Available importance is Low,Medium,High, with Medium being the default.

3, 查看classifier function

通过 sys.dm_resource_governor_configuration

-- Get the in-memory configuration.
select
    object_schema_name(rgc.classifier_function_id) AS N'Active classifier UDF schema',
    rgc.classifier_function_id,
    o.name as  N'Active classifier UDF name' ,
    o.type,
    o.type_desc,
    rgc.is_enabled,
    sm.definition
from sys.resource_governor_configuration rgc
inner join sys.objects o
    on rgc.classifier_function_id=o.object_id
inner join sys.sql_modules sm
    on o.object_id=sm.object_id

Appendix Script

创建 Resource governor 的示例代码

use master

CREATE RESOURCE POOL rpLowReource_Percent_20
WITH
(
     MIN_CPU_PERCENT ,
     MAX_CPU_PERCENT ,
     CAP_CPU_PERCENT ,
     AFFINITY SCHEDULER = auto,
     MIN_MEMORY_PERCENT ,
     MAX_MEMORY_PERCENT
);
go

CREATE WORKLOAD GROUP wgLowResource_Percent_20
WITH
(
    IMPORTANCE = MEDIUM,
    REQUEST_MAX_MEMORY_GRANT_PERCENT,
    REQUEST_MAX_CPU_TIME_SEC,
    REQUEST_MEMORY_GRANT_TIMEOUT_SEC,
    MAX_DOP,
    GROUP_MAX_REQUESTS
)
using rpLowReource_Percent_20;
go

use master
go

CREATE FUNCTION dbo.rgClassifierFunction_LowResource_Percent_20()
RETURNS sysname
WITH SCHEMABINDING
AS
BEGIN
    DECLARE @Workload_Group_Name AS sysname
      IF (SUSER_NAME() = 'USER_READONLY')
          SET @workload_group_name = 'wgLowResource_Percent_20'
    RETURN @workload_group_name
END;
GO

-- Register the classifier user-defined function and update in-memory configuration.
ALTER RESOURCE GOVERNOR WITH (CLASSIFIER_FUNCTION=dbo.rgClassifierFunction_LowResource_Percent_20);
GO
ALTER RESOURCE GOVERNOR RECONFIGURE;
GO

参考doc:

sys.dm_resource_governor_resource_pools (Transact-SQL)

sys.dm_resource_governor_workload_groups (Transact-SQL)

sys.dm_resource_governor_configuration (Transact-SQL)

Resource Governor Related Dynamic Management Views (Transact-SQL)

Resource governor2:Configuration query的更多相关文章

  1. 解读ASP.NET 5 & MVC6系列(5):Configuration配置信息管理

    在前面的章节中,我们知道新版的MVC程序抛弃了原来的web.config文件机制,取而代替的是config.json,今天我们就来深入研究一下配置文件的相关内容. 基本用法 新版的配置信息机制在Mic ...

  2. 开发错误11:Configuration with name ‘default’ not found

    开发错误11:Configuration with name 'default' not found 今天在导入一个sdkdemoapp3.0项目时,发现project build.gradle 与m ...

  3. VS EF Error: Configuration Error extension=".edmx" type="System.Data.Entity.Design.AspNet.EntityDesignerBuildProvider"

    错误截图: Configuration Error :<add extension=".edmx" type="System.Data.Entity.Design. ...

  4. asp.net core源码飘香:Configuration组件

    简介: 这是一个基础组件,是一个统一的配置模型,配置可以来源于配置文件(json文件,xml文件,ini文件),内存对象,命令行参数,系统的环境变量又或者是你自己扩展的配置源,该组件将各个配置源的数据 ...

  5. (转)Spring4.0:@Configuration

    从Spring3.0,@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或者多个被@Bean注解的方法,这些方法将会被AnnotationConfigAppli ...

  6. Android Studio3.1.2升级问题:Configuration 'compile' is obsolete and has been replaced with 'implementation'.

    每次升级Android Studio时,一般情况下Gradle版本的也会相应的升级,我之前Android Studio 3.0.1.Gradle 是4.1升级后为:Android Studio 3.1 ...

  7. spring4.0之二:@Configuration的使用

    从Spring3.0,@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法,这些方法将会被AnnotationConfigApplic ...

  8. VMware:Configuration file was created by a VMware product with more features than this version

    Few days ago,I opened the Genesys demo VM by VMware Server 1.0.4 and got an error like this: "C ...

  9. 转:spring4.0之二:@Configuration的使用

    从Spring3.0,@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法,这些方法将会被AnnotationConfigApplic ...

随机推荐

  1. 【BZOJ1662】[Usaco2006 Nov]Round Numbers 圆环数 数位DP

    [BZOJ1662][Usaco2006 Nov]Round Numbers 圆环数 Description 正如你所知,奶牛们没有手指以至于不能玩"石头剪刀布"来任意地决定例如谁 ...

  2. iOS特性一 关闭系统日志打印

    解决办法 (1)Product -->Scheme -->Edit Scheme -->Run -->Arguments (2)添加一个属性值OS_ACTIVITY_MODE: ...

  3. RN 项目导入WebStorm 组件没有依赖

    你需要在项目根目录   $ npm instal 恭喜你完成 但是依然报错 npm config set registry="registry.npmjs.org"  重新配置了一 ...

  4. sort命令

    1.默认情况下,sort命令,以字母序进行文本排序sort word.txt2.如果想对数字进行排序,可以使用-n参数sort num.txt -n3指定列排序下面是对passwd文件,以冒号(:)进 ...

  5. Editbox之三个框框

    自重装系统后,电脑中两个版本的eclipse都驾崩了,起个VS也要花费半年的时间(观赏收费),所以就运用已有的工具STS编了代码,不能用JavaFX很是遗憾,只能在网上找了代码,自己修改后完成了测试. ...

  6. JavaScript数组去重的几种方法

    这个老问题,网上普遍都有了,为什么要再写一遍呢,主要是为了记个笔记... 遍历时搜索结果数组 思路很明确,如下 新建一个数组存放结果 循环遍历原数组,对于每一个元素,在结果数组中搜索是否存在 若不存在 ...

  7. 浏览器兼容性-JS篇

    总结一下平时遇到的浏览器兼容性问题,本篇关于JS. 1.事件绑定 兼容写法: function add(obj,event){ if (obj.addEventListener) { obj.addE ...

  8. 利用sqlmap进行mysql提权的小方法(win与liunx通用)

    文章作者:pt007@vip.sina.com文章来源:https://www.t00ls.net/thread-36196-1-1.html1.连接mysql数据打开一个交互shell:sqlmap ...

  9. strcpy函数在VS2015无法使用的问题

    一:原因:一般认为是vs准备弃用strcpy的,安全性较低,所以微软提供了strcpy_s来代替 然而,strcpy_s并没有strcpy好用,我们要想继续在VS2015中使用strcpy该怎么办 呢 ...

  10. 树莓派pppoe

    连接的网络是移动(铁通)的宽带,不同的宽带的dns需要修改. 1.首先安装pppoe包 apt-get install pppoe 2.然后,复制conf文件/etc/ppp/pppoe.conf: ...