你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。

Azure SQL 数据库的无服务器计算层

适用于:Azure SQL 数据库

无服务器是计算层,适用于Azure SQL 数据库中的单一数据库,可根据工作负荷需求自动缩放计算,并针对每秒使用的计算量计费。 此外,当仅对存储计费时,无服务器计算层将在非活动期间自动暂停数据库;当活动返回时,它将自动恢复数据库。 无服务器计算服务层可以在常规用途服务层和超大规模服务层中使用。

概述

计算自动缩放范围和自动暂停延迟是无服务器计算层级的重要参数。 这些参数的配置将组成数据库性能经验和计算成本。

指示无服务器计费因不活动而停止产生计算费用的图示。

性能配置

  • “最小 vCore 数”和“最大 vCore 数”是可配置的参数,用于定义数据库可用的计算容量范围。 内存和 IO 限制与指定的 vCore 范围成正比。
  • 自动暂停延迟是一个可配置参数,用于定义数据库在自动暂停之前必须保持非活动状态的时长。 下次登录或其他活动发生时,会自动恢复数据库。 或者,你也可以关闭自动暂停。 更多信息请参见 Azure SQL 数据库 无服务器计算层中的自动暂停和自动恢复。

默认设置

下表显示了这些参数可用的值。

参数 可选的值 默认值
最小 vCore 数 取决于配置的最大 vCore 数 - 请参阅资源限制。 0.5 vCores
常规用途的自动暂停延迟 最小值:15 分钟
最大值:10,080 分钟(七天)
增量:1 分钟
禁用自动暂停:-1
60 分钟
Hyperscale 的自动暂停延迟时间 最少:60分钟
最大值:10,080 分钟(七天)
增量:1 分钟
禁用自动暂停:-1
60 分钟

成本

无服务器数据库的成本是计算成本和存储成本的总和。 存储成本的确定方式与在预配计算层中相同。

  • 当计算资源使用量介于您配置的最小和最大限制值之间时,计算成本将根据所使用的 vCore 和内存来确定。
  • 当计算使用低于你配置的最低限值时,计算成本基于配置的最小 vCore 和最小内存。
  • 暂停数据库后,计算成本将会归零,只会产生存储成本。

更多成本详情请参见 无服务器计算层计费和成本场景。

方案

对于具有间歇性、不可预测的使用模式,在空闲使用时间段后的计算预热期间能够容忍一定延迟的单一数据库来说,无服务器是一种高性价比的方案。 相比之下,预配计算层级针对单个数据库或弹性池中平均使用率较高且无法承受计算预热延迟的多个数据库,在价格和性能方面进行了优化。

非常适合无服务器计算的场景

  • 对于使用模式呈间歇性且不可预测、期间夹杂不活动时段,并且长期平均计算利用率较低的单个数据库,可使用无服务器计算。
  • 对于配置计算层中经常重新扩展的单个数据库,或者当你希望将计算重新扩展委托给服务时,可以使用无服务器计算。
  • 在 Azure SQL 数据库 中,如果对于没有使用历史记录的新建单个数据库,难以或无法在部署前估算计算资源规模,请使用无服务器计算。

适合预配计算的场景

  • 对于使用模式更规律、可预测且平均计算利用率更高的单个数据库,使用配置计算。
  • 对于无法容忍更频繁的内存回收或从暂停状态恢复时延迟所带来性能影响的数据库,请使用预配计算资源。
  • 为多个使用模式间歇且不可预测的数据库使用预配置计算,这些数据库可以整合到弹性池中,以实现更好的性价比优化。

比较计算层

下表汇总了无服务器计算层和预配计算层之间的区别:

无服务器计算 预配计算
数据库使用模式 间歇性、不可预测的使用模式,在一段时间内的平均计算利用率较低。 较有规律的使用模式,在一段时间内平均计算利用率较高;或者使用弹性池的多个数据库。
绩效管理努力 较低 较高
计算缩放 自动 手动
初始计算响应性 在非活动期后较低 即时
计费粒度 每秒 每小时
  • 无服务器计算的最佳数据库使用模式是间歇性且不可预测,且平均计算利用率随时间较低。 配置计算的最佳使用模式是更规律,平均计算利用率随时间更高,或包含多个数据库的弹性池。
  • 无服务器计算对性能管理的投入要求更低。 预配计算需要投入更多的性能管理精力。
  • 无服务器计算是自动扩展的。 手动配置计算尺度。
  • 无服务器计算在非活跃期后初始响应速度较低。 配置好的计算会立即响应。
  • 无服务器计算按秒计费。 预配的计算资源按小时计费。

购买模型和服务层级

下表描述了基于购买模型、服务层级和硬件的无服务器支持:

类别 支持 不支持
购买模型 vCore DTU
服务层级 通用用途
超大规模
业务关键
硬件 标准系列 (第5代) 所有其他硬件

自动缩放无服务器数据库

有关自动扩展和无服务器计算层响应性的更多信息,请参见 Azure SQL 数据库 的无服务器计算层自动扩展。

自动暂停和自动恢复

  • 通用服务层可支持无服务器自动暂停和自动恢复功能。
  • 无服务器自动暂停和自动恢复是 Azure SQL 数据库 Hyperscale 的一个预览功能。

有关自动暂停和自动恢复行为、触发器、故障排除和连接性的详细信息,请参见 无服务器计算层的自动暂停和自动恢复。

创建新的无服务器数据库

关于使用Azure门户、PowerShell、Azure CLI和T-SQL创建、移动和配置无服务器数据库的逐步说明,请参见“创建和配置无服务器数据库”。

无服务器计算层最佳实践

使用无服务器数据库时请考虑以下最佳实践。

实现应用重试逻辑

所有云连接应用都应使用 连接重试逻辑建议。 所有云应用中,必须通过重试逻辑处理瞬态连接错误。 无服务器数据库的重试逻辑尤为重要,因为自动恢复导致的临时连接错误是可预测的。

更多信息请参见 “自动恢复连接故障排除”。

回顾防止自动暂停的互操作性

一些功能和设置可以 防止无服务器数据库自动暂停。 如果这些功能正在使用,你可以关闭数据库的自动暂停功能。

有关更多信息,请参阅 自动暂停问题排查。

监视器

有关监控无服务器数据库暂停和恢复事件的更多信息,请参见“监控 Azure SQL 数据库 的无服务器计算层”。

资源限制

关于资源限制,请参见 通用无服务器计算 和 超大规模无服务器计算。

计费

有关详细计费信息,包括计算成本计算、最低计算费用以及通用和超大规模层级的场景示例,请参见 无服务器计算层计费。

可用区域

有关区域可用性,请参阅按区域Azure SQL 数据库的无服务器可用性。

后续步骤