视频:Greenplum资源组特性为多租户和混合负载保驾护航

Greenplum 5.2增加了一个全新的资源管理特性 — 资源组 (resource group)。 这一特性提高了Greenplum的稳定性和可管理性,提供了一个更好的资源隔离方式以支撑多租户和混合负载的复杂业务场景。
https://greenplum.cn/wp-content/uploads/2019/04/gp_resource_group_zhs.mp4
它管理着整个集群的CPU、内存资源,将这些资源分配到不同的资源组,确保每个组可以获得预期的资源。

资源组的CPU特性基于Linux内核的cgroups,具备良好的CPU资源隔离能力,也允许一个组中的查询可以超额使用其他组没有使用的空闲CPU资源。

每个组分配的内存资源是一个严格限制,包含固定和共享两部分,确保组内运行的每个查询都至少获得固定的内存部分。如果还需要更多内存,将自动申请使用可用的共享部分。

资源组提供了事务级别的并发度管理,这与原有的资源队列(resource queue)提供的语句级别的并发度管理完全不同,可以避免多个事务因为相互等待并发许可槽位与数据库对象而导致不必要的死锁。

这张图显示了两个资源组的CPU使用情况,在下方的资源组没有查询时,上方的资源组可以自动使用更多的CPU资源,而当下方的资源组有查询运行时,上方的资源组将自动减少CPU使用。

这张图显示了短查询在不同系统负载情况下的延迟,可以看到,借助资源组,即使在系统CPU使用率和其他组CPU占用率很高的情况下,短查询的延迟依然保持相对稳定。

在5.2之后的版本,又持续增加了多个新功能,例如按CPU核分配的cpuset和全局共享内存,更多信息,请参考Greenplum官方文档http://gpdb.docs.pivotal.io/,搜索resource group

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 9,325评论 0 5
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,794评论 1 32
  • YarnYarn产生背景:Yarn直接来自于MR1.0MR1.0 问题:采用的是master slave结构,ma...
    时待吾阅读 11,162评论 2 23
  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 10,790评论 0 9
  • iOS多线程编程 基本知识 1. 进程(process) 进程是指在系统中正在运行的一个应用程序,就是一段程序的执...
    陵无山阅读 11,299评论 1 14