写点什么

细说 GaussDB(DWS)复杂多样的资源负载管理手段

  • 2022 年 6 月 29 日
  • 本文字数:1535 字

    阅读完需:约 5 分钟

细说GaussDB(DWS)复杂多样的资源负载管理手段

本文分享自华为云社区《GaussDB(DWS) 资源负载管理:并发管控以及CPU管控效果实测以及分析说明【这次高斯不是数学家】》,作者: Malick 。

背景


GaussDB(DWS)提供了复杂多样的资源负载管理手段:既可以从单个 cn 的总并发数限制作业的数量(max_active_statements),也可以创建资源池,对于指定资源池的用户进行并发限制。在资源池上,即可以进行内存、CPU 的限制,也可以不进行资源限制。对于 CPU 资源的管控,即可以使用指定具体核数的硬限制,也可以使用空闲时按需分配,cpu 跑满时按照配比分配资源的软限制。


​正因为有这么多的功能配置,才可以让 DWS 在不同的业务场景中,采取不同的配置方案,维持业务稳定性,保证重要业务的资源使用。


​对于如此多的管控功能,管控起来实际的效果到底如何,本篇文章就基于当前最新版本,进行效果实测,并进行一定的分析说明。主要分为以下几个部分:


  • 并发数限制在资源瓶颈时的作用

  • CPU 限额的实际使用效果

  • CPU 配额的实际效果,配额 CPU 与限额 CPU 的能力对比

场景一:并发数限制在资源瓶颈时的作用


所谓资源瓶颈,即 CPU、内存、IO、网络其中的一项或者多项达到瓶颈,出现作业之前争抢资源,造成性能大幅下降。对于此类场景,我们日常解决问题时,通常想到的几个办法:


​1.降低业务的并发量;2.抓出消耗资源高的 sql 语句,令其优化;3.对于耗费 cpu 高的作业进行资源限制,保障其他作业有足够的资源可以使用。


​理论上每个方法都有效果,但是效果如何,并不能简单得说清楚,需要数据来进行一些印证。

环境搭建


1.配置:3 台物理机,规格:



2.高斯数据库(DWS)集群规格:



PS:集群的版本对测试结果基本没有影响,各个版本功能规格基本没有变化。

数据构造


测试 CPU 资源管控对于灵活短查询以及复杂查询的影响,复杂查询采取 TPCDS 数据和灵活查询采取 TPCC 数据。此处构造 1500x 的 TPCDS/100xTPCC。


数据来源:


  1. tpcds 数据由 tpcds 工具构造。耗时近一晚上。启动本地 gds 服务器,创建 tpcds 相应原表及外表,直接导入。HDD 盘,导入性能也较差。

  2. tpcc 数据在其余测试数据服务器中有现成数据,直接创建原表外表进行 gds 导入,100x 数据,导入大约 10min 左右。

测试思路


  1. 找到 tpcds 中高 CPU 消耗的语句,测试几个并发能将 CPU 打满,并且需要运行时间不要过长,避免影响测试效率。

  2. 找到语句后,定好一批作业的并发数,例如整体作业数量为 30 个,只需 4 并发就会将 CPU 打满,那么测试不同的并发控制下,作业性能情况。

  3. 不同并发下第一个完成作业时间由于 CPU 争抢程度不同,时间都不一样,因此也需要记录下来。

测试数据


说明:tpcds-Q9,在本测试环境 1500x 数据下,单并发可使物理机 cpu 达到 30%-50%,单并发运行时间在 100s 左右。;本测试采取 Q9*30 作为一批作业。控制不同并发数,记录每批的运行情况;4 并发时 cpu 基本已经达到瓶颈,因此本轮测试从 4 并发开始。

测试结果如下:


结论分析


  1. 首先我们绘制一个并发数与整体执行时间,单个执行时间的趋势变化图:

图表如下:



2.图表分析,由上折线图可以看出:


  1. 随着并发数的增加,整体运行时间略微有所提升,说明在 CPU 瓶颈的情况下,并发数的降低,并不能提升批量作业的整体性能。

  2. 作业整体平均运行时间也比较平稳,平均每个作业运行的时间消耗,在不同并发数下也没有大的差别。

  3. 第一个结束的作业运行时间,在并发数为 4 的情况下,只有 400s+,而在并发数 30 拉满的情况,达到了 1620s+,差距很大,变化趋势基本是随着并发数的增长线性变长。

综合说明


根据测试结论分析,在 CPU 瓶颈的情况下,限制并发数,实际并不能提升整体运行的性能;但是在不同场景下,可以选择不同的配置策略。


例如:需要有作业及时响应的,可以将并发数限制少一些,这样能保证总有作业能以较快的速度完成;需要整体作业运行性能较快的,根据测试数据,可以将并发数设大,这样整体运行的时间最短。


点击关注,第一时间了解华为云新鲜技术~

发布于: 刚刚阅读数: 3
用户头像

提供全面深入的云计算技术干货 2020.07.14 加入

华为云开发者社区,提供全面深入的云计算前景分析、丰富的技术干货、程序样例,分享华为云前沿资讯动态,方便开发者快速成长与发展,欢迎提问、互动,多方位了解云计算! 传送门:https://bbs.huaweicloud.com/

评论

发布
暂无评论
细说GaussDB(DWS)复杂多样的资源负载管理手段_数据库_华为云开发者联盟_InfoQ写作社区