理论+示例,详解GaussDB(DWS)资源管理

💡 原文中文,约8300字,阅读约需20分钟。
📝

内容提要

本文介绍了如何合理地管理和分配GaussDB(DWS)数据库系统的资源,包括负载管理、CPU资源管控、网络管控、空间管控、异常规则、查询过滤器和资源管理计划等能力。建议将资源池数量控制在3个以下,并根据业务优先级进行资源分配和管控。最后,介绍了如何配置资源池、短查询加速、查询估算内存、query_band和网络资源管控等功能。

🎯

关键要点

  • 合理管理和分配数据库系统资源是保证其稳定高效运行的关键。
  • 资源管理目标包括防止资源过载、实现高优业务优先调度、资源隔离和快速识别异常查询。
  • 资源池用于划分系统资源,通过设置资源上限实现资源管控。
  • GaussDB(DWS)支持负载管理、资源管控、异常规则、查询过滤器和资源管理计划等能力。
  • 负载管理通过并发和估算内存进行查询调度,防止资源争抢。
  • CPU资源管控基于cgroups实现共享配额和专属限额。
  • 网络管控支持基于SP+DWRR算法的网络调度和流控。
  • 空间管控防止磁盘满和限制业务使用磁盘空间。
  • 异常规则用于预防单个作业占用过多资源,影响系统性能。
  • 查询过滤器提供对黑名单作业的过滤功能。
  • 资源管理计划支持在不同时间自动切换资源管理配置。
  • 资源管理不是万能的,不能解决所有资源类问题,主要目的是避免资源无序使用和实现资源隔离。
  • 在设计资源管理方案前,需要确认用户业务场景和管控诉求。
  • 建议将资源池数量控制在5个以下,最好是3个及以下。
  • 配置资源管理方案时需明确资源池、并发控制、内存管控等参数。
  • 短查询加速功能可根据需求开启或关闭,以提升简单查询性能。
  • 配置query_band用于区分不同业务的资源池路由。
➡️

继续阅读