400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
YMatrix 文档
快速上手
集群部署
SQL参考
工具指南
定义一个新的资源组。
CREATE RESOURCE GROUP name WITH (group_attribute=value [, ... ])
其中group_attribute是:
CPU_RATE_LIMIT=integer | CPUSET=tuple
MEMORY_LIMIT=integer
[ CONCURRENCY=integer ]
[ MEMORY_SHARED_QUOTA=integer ]
[ MEMORY_SPILL_RATIO=integer ]
[ MEMORY_AUDITOR= {vmtracker | cgroup} ]
为 YMatrix 数据库资源管理创建一个新的资源组。 您可以创建资源组来管理角色资源或管理 YMatrix 数据库外部组件(例如 PL/Container)的资源。
启用资源组后,您创建的用于管理用户角色的资源组将标识该角色的并发事务,内存和CPU限制。 您可以将此类资源组分配给一个或多个角色。
您创建的用于管理 YMatrix 数据库外部组件(例如 PL / Container)的资源的资源组会在启用资源组时标识该组件的内存和CPU限制。 这些资源组使用 cgroup 进行 CPU 和内存管理。 将资源组分配给外部组件是特定于组件的。 例如,当您配置 PL / Container 运行时时,您将分配一个 PL / Container 资源组。 您不能将为外部组件创建的资源组分配给角色,也不能将为角色创建的资源组分配给外部组件。
您必须具有SUPERUSER特权才能创建资源组。 YMatrix 数据库群集中允许的最大资源组数为 100。
YMatrix 数据库预定义了两个默认资源组:admin_group和default_group。 这些组名以及组名none均保留。
要为资源组设置适当的限制,YMatrix 数据库管理员必须熟悉通常在系统上执行的查询, 以及执行这些查询的用户/角色以及他们可能使用的外部组件,例如 PL / Containers。
创建资源组的角色后, 组分配给使用ALTER ROLE或CREATE ROLE命令一个或多个角色。
创建资源组以管理外部组件的CPU和内存资源后,将外部组件配置为使用该资源组。 例如,配置PL/Container运行时resource_group_id。
name
CONCURRENCY integer
CPU_RATE_LIMIT integer
CPUSET tuple
MEMORY_LIMIT integer
MEMORY_SHARED_QUOTA integer
MEMORY_SPILL_RATIO integer
MEMORY_AUDITOR {vmtracker | cgroup}
您不能在显式事务或子事务中提交CREATE RESOURCE GROUP命令。
使用gp_toolkit.gp_resgroup_config系统视图显示所有资源组的限制设置:
SELECT * FROM gp_toolkit.gp_resgroup_config;
创建一个CPU和内存限制百分比为35的资源组:
CREATE RESOURCE GROUP rgroup1 WITH (CPU_RATE_LIMIT=35, MEMORY_LIMIT=35);
创建一个资源组,其并发事务限制为20,内存限制为15,CPU限制为25:
CREATE RESOURCE GROUP rgroup2 WITH (CONCURRENCY=20,
MEMORY_LIMIT=15, CPU_RATE_LIMIT=25);
创建一个资源组来管理PL/Container资源,指定内存限制为10,CPU限制为10:
CREATE RESOURCE GROUP plc_run1 WITH (MEMORY_LIMIT=10, CPU_RATE_LIMIT=10,
CONCURRENCY=0, MEMORY_AUDITOR=cgroup);
创建一个内存限制百分比为11的资源组,并为其分配CPU核心1至3:
CREATE RESOURCE GROUP rgroup3 WITH (CPUSET='1-3', MEMORY_LIMIT=11);
CREATE RESOURCE GROUP是 YMatrix 数据扩展。 在SQL标准中没有资源组或资源管理。