Greenplum中的资源管理(GP6和GP7不一样)

0    127    3

Tags:

👉 本文共约2388个字,系统预计阅读时间或需9分钟。

简介

Greenplum数据为用户提供了根据业务需求对查询进行排序以及提供资源的功能, 该功能的主要目的是为了防止在资源不可用时仍然发起查询的行为。

用户可以使用资源管理功能来限制并行的查询数、单个查询所使用的内存量和CPU使用量。 Greenplum数据库提供了两种管理资源的模式 —— 资源队列和资源组。

Important: 在启用着基于资源组的负载管理的RedHat 6.x 以及 CentOS 6.x系统中 存在明显的Greenplum数据库性能下降现象,这是Linux cgroup的内核Bug造成的。该内核Bug已经在 RedHat 7.x 以及 CentOS 7.x系统中被修复了。

若用户对在RedHat 6系统下使用资源组的性能满意,且符合使用场景的话,请将内核版本升级到 2.6.32-696或更高以获得cgroups Bug修复带来的其他优势。

Greenplum数据库中同时只能启用资源组或资源队列中的一个资源管理模式。

在安装Greenplum数据库集群时,在GP6中,默认启用的资源管理模式是资源队列管理模式。尽管在该模式下, 用户仍然可以创建并分配资源组,但启用资源组管理模式仍需要先启用资源组。

但在GP7中,默认不启用任何的资源管理模式。

资源队列和资源组的区别

下表总结了一些资源队列和资源组的区别。

参数资源队列资源组
并行在查询级别管理在事务级别管理
CPU指定队列顺序指定CPU的使用百分比;使用Linux控制组
内存在队列和操作级别管理;用户可以过量使用在事务级别管理,可以进一步分配和追踪;用户不可以过量使用。
内存隔离同资源组下的事务使用的内存是隔离的,不同资源组使用的内存也是隔离的。
用户仅非管理员用户有限制。非管理员用户和超级用户都有限制
排序当没有可用槽位时,才开始排序当槽位或内存不足时,开始排序
查询失效当内存不足时,查询可能会立即失效在没有更多的共享资源组内存的情况下,若事务到达了内存使用量限制后仍然提出增加内存的申请,查询可能会失效
避开限制超级用户角色以及特定的操作者和功能不受限制。SET、RESET和SHOW指令不受限制
外部组件管理PL/Container CPU和内存资源

查询

在GP6中,默认为资源队列queue:

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复