资源组管理
云原生数据仓库 AnalyticDB MySQL 版支持将计算资源在物理上划分为多个资源组。每个资源组拥有独立的CPU、内存、查询队列、任务类型和配置参数。不同资源组的计算资源完全隔离,不仅可以保障核心业务不受复杂计算和突发状况影响,还能合理分配资源使集群性能达到最大化,满足集群内部多租户和混合负载的需求。本文介绍资源组的类型和应用场景。
资源组的作用
企业版、基础版及湖仓版
资源隔离:不同用户或应用的查询可能对资源的需求不同。通过资源隔离,可以确保对延迟敏感的交互式任务不受执行耗时长、资源消耗大的批处理任务的影响。详情请参见如何使用指定资源组的资源执行查询。
优先级调度:每个资源组拥有独立的查询优先级队列,允许您控制哪些查询优先执行。详情请参见Interactive型资源组的优先级队列与并发和Job型资源组的优先级队列。
离线批处理需求:默认的Interactive资源组适用于交互式在线分析。如果您有离线批处理的需求,希望离线批处理不影响在线分析的响应速度,可以创建Job型资源组专门用于离线批处理。详情请参见新建和管理资源组。
资源弹性:如果业务具有规律的波峰波谷时,您可以配置弹性计划,定时自动增加或减少资源组的资源。详情请参见资源弹性扩缩容。
您也可以设置最大和最小的可用资源。资源组的资源量,将根据业务负载,在您设定的范围内自动弹性扩缩容。详情请参见Interactive资源组Multi-Cluster弹性模型和配置Job型资源组的计算最大资源和最小资源。
工作负载管理:基于资源组,控制工作负载。例如,当查询执行耗时超过阈值时,将该查询投递到其他资源组重新执行,避免阻塞该资源组的其他查询。详情请参见工作负载管理。
数仓版
资源隔离:不同用户或应用的查询可能对资源的需求不同。通过资源隔离,可以确保对延迟敏感的交互式任务不受执行耗时长、资源消耗大的批处理任务的影响。详情请参见指定执行查询的资源组。
优先级调度:每个Interactive资源组拥有独立的查询优先级队列,允许您控制哪些查询优先执行。详情请参见Interactive型资源组的优先级队列与并发。
不同的查询执行模式:在资源组级别,批量设置查询的执行模式。详情请参见资源组介绍。
资源弹性:当业务具有规律的波峰波谷时,您可以配置弹性计划,定时自动增加或减少资源组的资源。详情请参见资源弹性扩缩容。
工作负载管理:基于资源组,控制工作负载。例如,当查询执行耗时超过阈值时,将该查询投递到其他资源组重新执行,避免阻塞该资源组的其他查询。详情请参见工作负载管理。
资源组分类
根据创建方式的不同,AnalyticDB for MySQL资源组分为默认资源组(系统默认创建)和自定义资源组(用户手动创建)两种。
企业版、基础版及湖仓版
默认资源组
定义
集群创建时便存在,即user_default和serverless。
属性
企业版和基础版:
默认资源组的计算资源等于集群的预留资源数(节点数*单节点规格)。
默认资源组的弹性变配方式为分时弹性变配。
默认资源组不支持修改和删除。
默认资源组的任务类型不支持修改:
user_default:Interactive类型。serverless:Job类型。
默认资源组不支持绑定数据库账号。
湖仓版:
默认资源组的计算预留资源最小为0 ACU,计算预留资源最大为集群当前未分配资源,步长为16 ACU。
默认资源组支持修改计算预留资源。
默认资源组不支持修改和删除。
默认资源组的任务类型不支持修改:
user_default:Interactive类型。serverless:Job类型。
默认资源组不支持绑定数据库账号。
自定义资源组
定义
自定义创建的资源组可以为Interactive型和Job型。创建方式请参见新建和管理资源组或CreateDBResourceGroup - 创建资源组。
属性
自定义资源组支持修改资源量。详情请参见新建和管理资源组。
Interactive型资源组:均为Multi-Cluster弹性资源组,可根据设置的最小和最大cluster个数动态调整资源量。当最小和最大cluster个数相等时,则为固定资源大小,不具备弹性能力。
Job型资源组:计算最小资源为0 ACU,控制台可设置的计算最大资源为1024 ACU,步长为8 ACU。若您有需求,可提交工单联系技术支持调大资源。
自定义资源组支持删除。
自定义资源组不支持修改任务类型。
自定义资源组支持绑定和解绑数据库账号。详情请参见绑定或解绑数据库账号。
Job型资源组支持配置ThriftServer。详情请参见启停ThriftServer。
数仓版
默认资源组
定义
集群创建时便存在,即USER_DEFAULT。
属性
自定义资源组
定义
您自定义创建的资源组,支持创建查询类型为Default_Type、Batch和Interactive的资源组。创建方式请参见新建资源组或CreateDBResourceGroup - 创建资源组。
属性
资源量为独享的,计算资源的最小步长为16核64 GB,即一个计算节点资源。计算资源最小可以设置为0核0 GB,最大不能超过集群的总计算资源量。
支持删除自定义资源组。
支持修改自定义资源组的资源量。
支持绑定和解绑数据库账号。详情请参见绑定或解绑数据库账号。
功能概览
企业版、基础版及湖仓版
资源组根据运行的任务类型不同,分为Interactive型资源组、Job型资源组和AI资源组。区别如下:
Interactive型资源组:
工作原理:用户提交查询到前端节点后,Interactive型资源组的常驻计算资源会以XIHE MPP或Spark SQL Multi-Cluster方式执行查询,响应时间较快,通常在毫秒级或者秒级。XIHE MPP的详细信息,请参见XIHE MPP引擎;Spark SQL Multi-Cluster的详细信息,请参见Multi-Cluster弹性模型。
适用场景:高QPS低RT的在线场景或者交互式分析场景。
执行的任务:XIHE MPP SQL和Spark SQL。
弹性扩缩容:根据弹性计划定时扩缩容,或在Cluster的数量范围内根据负载自动扩缩容。
Job型资源组:
工作原理:用户提交查询到前端节点后,前端节点会拉起临时计算资源,并以XIHE BSP方式执行查询,响应时间较慢,通常在秒级或分钟级。拉起的临时计算资源量在0 ACU和Job型资源组最大资源之间,具体资源量大小取决于所运行的任务大小。XIHE BSP的详细信息,请参见XIHE BSP引擎。
适用场景:高吞吐离线场景。
执行的任务:XIHE BSP SQL、Spark SQL和Spark应用。
弹性扩缩容:以按需弹性方式扩容和缩容计算资源。
AI型资源组:
工作原理:AI资源组基于Ray Cluster部署,Head节点负责元数据管理、GCS服务和任务调度,但不执行任务;Worker Group支持CPU和GPU两种资源类型,能够根据任务需求动态分配计算资源。
适用场景:异构计算场景。
执行的任务:MLSQL模型运行和Ray托管计算。
弹性扩缩容:Worker Group支持自动弹性,且每个Worker Group都能独立弹性扩缩容。多个Worker Group时,系统会自动进行最佳匹配以避免过载或闲置。
数仓版
资源组根据运行的任务类型不同,分为Interactive型资源组、Batch型资源组。区别如下:
Interactive型资源组:
工作原理:用户提交查询后,常驻计算资源以XIHE MPP方式执行查询,响应时间较快,通常在毫秒级或者秒级。XIHE MPP的详细信息,请参见XIHE MPP引擎。
适用场景:适用于对延迟敏感的实时分析查询。
执行的任务:XIHE MPP。
弹性扩缩容:根据弹性计划定时扩缩容,或在Cluster数量范围内根据负载自动扩缩容。
Batch型资源组:
工作原理:用户提交查询后,常驻计算资源以XIHE BSP方式执行共享查询,响应时间为秒级或分钟级。
适用场景:适用于执行时间长、计算数据量大的查询。例如:清洗类查询(Extract-Transform-Load)。
执行的任务:支持XIHE BSP。
弹性扩缩容:以按需弹性方式扩容和缩容计算资源。