Serverless

Serverless云数据库 SelectDB 版推出的一种无需管理服务器、按需付费的资源自动弹性伸缩能力。Serverless根据实际负载自动伸缩计算与缓存资源,并按实际使用量付费,能够解决业务高峰期因资源不足导致的查询性能瓶颈等问题,以及降低业务低谷期因资源闲置产生的成本浪费,让您能专注于数据处理和分析等业务工作。本文为您介绍Serverless的创建与管理相关操作。

自动弹性伸缩

资源使用对比

当业务波动较大时,云数据库 SelectDB 版普通实例和Serverless实例的计算资源规格变化情况如下。

资源对比

从图中可以看出:

  • 普通实例:波谷期浪费资源较多,高峰期资源不足且业务受损。

  • Serverless实例:

    • 根据业务负载自动扩缩容,减少运维成本和风险。

    • 资源利用率高,降低资源成本。

    • 高峰期也能满足业务需求,提高系统稳定性。

适用场景

  • 业务负载有明显业务波峰波谷的分析场景。例如,BI报表生成、用户行为分析,其访问量和计算负载具有显著的周期性。

  • 期望降低运维负担与资源成本。例如,业务快速增长或负载不明确的企业,期望能提升运维效率、降低资源成本,更敏捷地响应业务需求。

  • 临时性数据任务。例如,开发测试环境,其资源使用频率较低;或者不可预测的数据分析任务,无法预估查询复杂度以及资源消耗量。

弹性伸缩机制

云数据库 SelectDB 版Serverless中,弹性伸缩机制是实现资源按需分配和成本优化的核心能力。它由内置的弹性规则和您设定的资源弹性范围共同决定。通过将预定义的弹性规则与业务负载指标(如CPU使用率、内存使用率等)相结合,弹性伸缩机制能够智能判断何时需要增加或减少资源。这种动态调整确保了在业务高峰期提供充足的资源支持,同时在低谷期自动释放闲置资源,从而降低成本并提升资源利用率。

在配置云数据库 SelectDB 版Serverless弹性伸缩机制前,您需要先了解云数据库 SelectDB 版实例的几个核心组件:

组件

说明

实例入口

负责接收请求。由云数据库 SelectDB 版托管并按需弹性伸缩,您无需管理。

集群

负责实际请求执行的分布式系统,每个集群内包含一个或多个BE节点,每个节点包含计算资源和缓存资源。

存储

按照实例维度,提供给用户存储数据服务对应的存储资源,以GB为单位,按需弹性使用,无需管理。

云数据库 SelectDB 版一个实例可包含多个集群,由于不同业务的负载模式和弹性需求各不相同,云数据库 SelectDB 版Serverless支持为每个集群单独设置弹性伸缩范围,实现更细粒度的资源管理和成本控制。集群内的弹性伸缩机制主要包含计算资源和缓存资源的配置规则,具体配置方法介绍如下。

计算资源

  • 单位

    SCU(SelectDB Computing Unit):云数据库 SelectDB 版Serverless产品计算弹性资源单位。1 SCU对应14 GB内存的服务能力。

  • 弹性规则

    弹性规则

    触发条件

    弹性策略

    BE弹升

    满足以下任一条件:

    • CPU使用率在5秒内的平均值超过60%

    • 内存使用率在1秒内超过60%

    资源弹升至MIN(触发弹升的资源实际使用量除以45%,预设的SCU弹性上限)。

    BE弹降

    同时满足以下条件,并持续1分钟:

    • CPU使用率<30%

    • 内存使用率<30%

    资源弹降至MAX(触发弹降的资源实际使用量除以45%,预设的SCU弹性下限),以1 CCU的步长逐步弹降。

  • 设置弹性区间

    集群基于弹性规则进行自动升降,为避免因不合理的大请求导致资源持续弹升或成本失控,支持设置节点个数和节点规格控制集群伸缩范围。

    • 节点个数:支持自定义节点个数。增加或减少集群节点,请求可能会路由到新节点,导致部分缓存命中率下降和查询性能抖动。

    • 节点规格:支持设置单计算节点的弹性上限与下限,垂直变配时,在此区间内进行集群升降。

缓存资源

  • 单节点缓存容量:支持设置单节点的缓存大小,100 GB≤单节点缓存容量≤10 TB。

  • 集群缓存容量:集群缓存容量=单节点缓存*节点数。当集群节点个数变化时,集群缓存容量联动变化。

相关文档

创建与管理Serverless,请参见Serverless使用