跳转至

CREATE RESOURCE GROUP

CREATE RESOURCE GROUP

定义一个新的资源组。

语法
``` sql CREATE RESOURCE GROUP name WITH (group_attribute=value [, … ])
其中`group_attribute`是:

``` sql
CPU_RATE_LIMIT=integer | CPU_RATE_CEILING=integer | CPUSET=tuple
MEMORY_LIMIT=integer
[ CONCURRENCY=integer ]
[ IO_KBPS=integer ]
[ IC_KBPS=integer ]
[ QUEUE_PRIORITY= {-1 | 0 | 1 | 2} ]
描述

为SeaboxMPP数据库资源管理创建一个新的资源组。可以创建资源组来管理角色资源。

启用资源组后,创建的用于管理用户角色的资源组将标识该角色的并发事务,内存和CPU限制等。您可以将此类资源组分配给一个或多个角色。

必须具有SUPERUSER权限才能创建资源组。SeaboxMPP数据库群集中允许的最大资源组数为100。

SeaboxMPP数据库预定义了三个默认资源组:admin_groupdefault_groupsystem_group。这些组名以及组名none均保留。

要为资源组设置适当的限制,SeaboxMPP数据库管理员必须熟悉通常在系统上执行的查询,以及执行这些查询的用户/角色。

创建资源组的角色后,组分配给使用ALTER ROLECREATE ROLE命令一个或多个角色。

参数

该SQL命令参数说明见下

name
资源组的名称。
CONCURRENCY integer

此资源组允许的最大并发事务数,包括活动和空闲事务。 CONCURRENCY值必须是[0 ..max_connections]范围内的整数。 为角色定义的资源组的默认CONCURRENCY值为20。

  • 注意: 您不能将admin_groupCONCURRENCY值设置为零(0)。
CPU_RATE_LIMIT integer | CPU_RATE_CEILING integer | PUSET tuple

创建资源组时,可以指定CPU_RATE_LIMIT,CPU_RATE_CEILINGCPUSET中的一个或多个,也可以都不指定,以使用默认值。

CPU_RATE_LIMIT是分配给该资源组的CPU资源的相对(共享)百分比。可以为资源组指定的最小为1, 最大为100。

CPU_RATE_CEILING是分配给该资源组的CPU资源的绝对(强制)百分比。 可以为资源组指定的最小CPU百分比为1, 最大为100。

CPUSET标识要为此资源组保留的CPU核心。在tuple中指定的CPU核心必须在系统中可用。tuple是用逗号分隔的单个核心号或核心号间隔的列表。 您必须将元组用单引号引起来,例如'1,3-4'。 * 注意: 仅在为SeaboxMPP数据库集群启用基于资源组的资源管理之后,才能为资源组配置CPUSET

MEMORY_LIMIT integer
分配给该资源组的SeaboxMPP数据库内存资源上限(单位:MB)。
IO_KBPS integer
限制IO每秒读写字节数,单位为KB/s。
IC_KBPS integer
限制内部数据传输每秒字节数,单位为KB/s。
QUEUE_PRIORITY {-1 | 0 | 1 | 2}
队列优先级。
注解

不能在显式事务或子事务中提交CREATE RESOURCE GROUP命令。

使用sc_toolkit.sc_resgroup_config系统视图显示所有资源组的限制设置:

SELECT * FROM sc_toolkit.sc_resgroup_config;
示例

创建一个CPU和内存限制为350MB的资源组:

CREATE RESOURCE GROUP rgroup1 WITH (CPU_RATE_LIMIT=35, MEMORY_LIMIT=350);

创建一个资源组,其并发事务限制为20,内存限制为150MB,CPU相对使用率限制为25:

CREATE RESOURCE GROUP rgroup2 WITH (CONCURRENCY=20, 
  MEMORY_LIMIT=150, CPU_RATE_LIMIT=25);

创建一个内存限制为110MB的资源组,并为其分配CPU核心1至3:

CREATE RESOURCE GROUP rgroup3 WITH (CPUSET='1-3', MEMORY_LIMIT=110);
兼容性说明
CREATE RESOURCE GROUP是SeaboxMPP数据扩展。 在SQL标准中没有资源组或资源管理。
相关SQL命令
ALTER ROLE, CREATE ROLE, ALTER RESOURCE GROUP, DROP RESOURCE GROUP